Autonomous navigation system

ABSTRACT

Some embodiments provide an autonomous navigation system which enables autonomous navigation of a vehicle along one or more portions of a driving route based on monitoring, at the vehicle, various features of the route as the vehicle is manually navigated along the route to develop a characterization of the route. The characterization is progressively updated with repeated manual navigations along the route, and autonomous navigation of the route is enabled when a confidence indicator of the characterization meets a threshold indication. Characterizations can be updated in response to the vehicle encountering changes in the route and can include a set of driving rules associated with the route, where the driving rules are developed based on monitoring the navigation of one or more vehicles of the route. Characterizations can be uploaded to a remote system which processes data to develop and refine route characterizations and provide characterizations to one or more vehicles.

This application is a continuation of U.S. patent application Ser. No.15/531,354, filed May 26, 2017, which is a 371 of PCT Application No.PCT/US2015/064059, filed Dec. 4, 2015, which claims priority to U.S.Provisional Patent Application No. 62/088,428, filed Dec. 5, 2014, whichare hereby incorporated by reference herein in their entirety.

BACKGROUND Technical Field

This disclosure relates generally to autonomous navigation of a vehicle,and in particular to development and evaluation of an autonomousnavigation route characterization which can be utilized by at least someportion of a vehicle to autonomously navigate the route.

Description of the Related Art

The rise of interest autonomous navigation of vehicles, includingautomobiles, has resulted in a desire to develop autonomous navigationsystems which can autonomously navigate (i.e., autonomously “drive”) avehicle through various routes, including one or more roads in a roadnetwork, such as contemporary roads, streets, highways, etc. However,systems which can enable autonomous navigation, also referred to asautonomous driving, of a vehicle can be less than ideal.

In some cases, autonomous navigation is enabled via an autonomousnavigation system which can process and respond to static features(e.g., roadway lanes, road signs, etc.) and dynamic features (presentlocations of other vehicles in a roadway on which the route extends,present environmental conditions, roadway obstructions, etc.) along aroute in real-time as they are encountered, thereby replicating thereal-time processing and driving capabilities of a human being. However,the processing and control capabilities required to simulate suchprocessing and responsive capability can be impractical, if technicallyfeasible, and the complexity and magnitude of computer systems requiredto be included in a vehicle to enable such real-time processing andresponsiveness can present an unsuitably excessive investment in capitalcosts for each vehicle, thereby rendering the system impractical forusage on a wide scale.

In some cases, autonomous navigation is enabled by developing a detailedmap of various routes, including data indicating various features of theroad (e.g., road signs, intersections, etc.), specifying various drivingrules relative to the various routes (e.g., proper speed limits, lanechanging speeds, lane locations, variations of driving rules based onvarious climate conditions and times of day, etc. for a given portion ofa given route), and providing the map to autonomous navigation systemsof various vehicles to enable the vehicles to autonomously navigate thevarious routes using the map.

However, development of such a map can require extensive expenditures oftime and effort, as developing sufficient data for an individual routecan require dispatching a suite of sensors, which can be mounted in adedicated sensor vehicle, to traverse a route and collect data regardingthe various features included in the route, processing the collecteddata to develop a “map” of the route, determining appropriate drivingrules for various portions of the route, and repeating the process foreach of the individual routes included in the map. Such a process canrequire an excessive expenditure of time and effort to develop a mapcharacterizing multiple routes, particularly when the multiple routesspan over some or all of the roadways in a major city, region, nation,etc.

In addition, as roadways can change over time, e.g. due to roadconstruction, accidents, weather, seasonal occurrences, etc. such a mapcan unexpectedly become obsolete and unusable for safe autonomousnavigation of a route. Updating a map can require dispatching a sensorsuite to re-traverse the route, which can require an expenditure oftime. When such an expenditure is considered in view of the sheer volumeof potential routes in a roadway network, particularly if multipleroutes require updating simultaneously, updating a map of routes in atimely manner, such that vehicle users are not deprived of safeautonomous navigation capabilities, can be difficult.

SUMMARY OF EMBODIMENTS

Some embodiments provide a vehicle configured to autonomously navigate adriving route. The vehicle includes sensor devices which monitorcharacteristics of the driving route based on the vehicle beingnavigated along the driving route, and an autonomous navigation systemwhich is interoperable with the sensor devices to: implement asuccession of updates to a virtual characterization of the drivingroute, based on monitoring a succession of manual navigations of thevehicle along the driving route, associate a confidence indicator withthe virtual characterization, based on monitoring the succession ofupdates to the virtual characterization, and enable autonomousnavigation of the vehicle along the driving route, based at least inpart upon a determination that the confidence indicator at least meets athreshold confidence indication, such that the autonomous navigationsystem autonomously navigates the vehicle along at least a portion ofthe driving route, based on controlling one or more control elements ofthe vehicle and based on a user-initiated command, received at theautonomous navigation system via a user interface of the vehicle, toengage in autonomous navigation of the portion of the driving route.

Some embodiments provide an apparatus which includes an autonomousnavigation system configured to be installed in a vehicle andselectively enable autonomous navigation of the vehicle along a drivingroute. The autonomous navigation system can include a routecharacterization module which implements a succession of updates to avirtual characterization of the driving route, wherein each update isbased on monitoring a separate one of a succession ofmanually-controlled navigations of the vehicle along the driving route,and implementing each update of the succession of updates includesassociating a confidence indicator with the virtual characterizationbased on a monitored variation, of the virtual characterization which isassociated with the respective update. The autonomous navigation systemcan include a route evaluation module configured to enableuser-initiated autonomous navigation of the driving route by thevehicle, based on a determination that a confidence indicator associatedwith the characterization of the driving route exceeds a thresholdconfidence indication.

Some embodiments provide a method which includes performing, by one ormore computer systems installed in a vehicle: receiving a set of sensordata associated with a driving route, from a set of sensors included inthe vehicle, based at least in part upon the vehicle being manuallynavigated along the driving route, processing the set of sensor data toupdate a stored characterization of the driving route, wherein thestored characterization is based on at least one previously-generatedset of sensor data associated with one or more historical manualnavigations of the vehicle along the driving route associating aconfidence indicator with the updated characterization based on acomparison of the updated characterization with the storedcharacterization, and enabling availability of user-initiated autonomousnavigation, by the vehicle, of the driving route, based at least in partupon a determination that the confidence indicator at least meets apredetermined threshold confidence indication.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a schematic block diagram of a vehicle 100 whichcomprises an autonomous navigation system (ANS), according to someembodiments.

FIG. 2 illustrates an illustration of a vehicle, which includes an ANSand a set of sensor devices, navigating through a region which includesmultiple roadway portions of multiple roadways, according to someembodiments.

FIG. 3 illustrates an illustration of a vehicle, which includes an ANSand a set of sensor devices, navigating through a region which includesmultiple roadway portions of a roadway, according to some embodiments.

FIG. 4 illustrates a block diagram of an autonomous navigation system(ANS), according to some embodiments.

FIG. 5A-C illustrate a user interface associated with the autonomousnavigation system, according to some embodiments.

FIG. 6 illustrates a user interface associated with the autonomousnavigation system, according to some embodiments.

FIG. 7 illustrates developing virtual characterizations of one or moreroadway portions to enable autonomous navigation of the one or moreroadway portions, according to some embodiments.

FIG. 8 illustrates a schematic of an autonomous navigation network,according to some embodiments.

FIG. 9A-B illustrate a schematic of an autonomous navigation network,according to some embodiments.

FIG. 10 illustrates a “curation spectrum” of processing available togenerate one or more virtual roadway portion characterizations,according to some embodiments.

FIG. 11 illustrates receiving and processing virtual characterizations,of one or more roadway portions, according to some embodiments.

FIG. 12 illustrates implementing at least a portion of a curationspectrum with regard to one or more virtual characterizations, of one ormore roadway portions, according to some embodiments.

FIG. 13 illustrates an example computer system configured to implementaspects of a system and method for autonomous navigation, according tosome embodiments.

This specification includes references to “one embodiment” or “anembodiment.” The appearances of the phrases “in one embodiment” or “inan embodiment” do not necessarily refer to the same embodiment.Particular features, structures, or characteristics may be combined inany suitable manner consistent with this disclosure.

“Comprising.” This term is open-ended. As used in the appended claims,this term does not foreclose additional structure or steps. Consider aclaim that recites: “An apparatus comprising one or more processor units. . . .” Such a claim does not foreclose the apparatus from includingadditional components (e.g., a network interface unit, graphicscircuitry, etc.).

“Configured To.” Various units, circuits, or other components may bedescribed or claimed as “configured to” perform a task or tasks. In suchcontexts, “configured to” is used to connote structure by indicatingthat the units/circuits/components include structure (e.g., circuitry)that performs those task or tasks during operation. As such, theunit/circuit/component can be said to be configured to perform the taskeven when the specified unit/circuit/component is not currentlyoperational (e.g., is not on). The units/circuits/components used withthe “configured to” language include hardware—for example, circuits,memory storing program instructions executable to implement theoperation, etc. Reciting that a unit/circuit/component is “configuredto” perform one or more tasks is expressly intended not to invoke 35U.S.C. § 112(f) for that unit/circuit/component. Additionally,“configured to” can include generic structure (e.g., generic circuitry)that is manipulated by software and/or firmware (e.g., an FPGA or ageneral-purpose processor executing software) to operate in manner thatis capable of performing the task(s) at issue. “Configure to” may alsoinclude adapting a manufacturing process (e.g., a semiconductorfabrication facility) to fabricate devices (e.g., integrated circuits)that are adapted to implement or perform one or more tasks.

“First,” “Second,” etc. As used herein, these terms are used as labelsfor nouns that they precede, and do not imply any type of ordering(e.g., spatial, temporal, logical, etc.). For example, a buffer circuitmay be described herein as performing write operations for “first” and“second” values. The terms “first” and “second” do not necessarily implythat the first value must be written before the second value.

“Based On.” As used herein, this term is used to describe one or morefactors that affect a determination. This term does not forecloseadditional factors that may affect a determination. That is, adetermination may be solely based on those factors or based, at least inpart, on those factors. Consider the phrase “determine A based on B.”While in this case, B is a factor that affects the determination of A,such a phrase does not foreclose the determination of A from also beingbased on C. In other instances, A may be determined based solely on B.

DETAILED DESCRIPTION Introduction

Some embodiments include one or more vehicles in which an autonomousnavigation system (“ANS”) is included, where the ANS enables autonomousnavigation of various driving routes (also referred to herein as“routes”) via developing a virtual characterization of the routes basedon monitoring various real-world features of the routes duringnavigation of the vehicle along the routes. The ANS controls variouscontrol elements of a vehicle to autonomously drive the vehicle (hereinreferred to as “autonomously navigate”, “autonomous navigation”, etc.)along one or more portions of a route based at least in part uponvirtual characterizations of the one or more portions of the route. Suchautonomous navigation can include controlling vehicle control elementsbased on characterizations of driving rules included in the virtualroute characterizations (e.g., vehicle velocity, spacing relative toother vehicles, position on a roadway, adjustments to same based onenvironmental conditions, etc.) and characterizations of static featuresof the route included in the virtual route characterizations (positionsof roadway lanes, roadway edges, road signs, landmarks, roadwayinclines, intersections, crosswalks, etc.), so that the ANS can safelyautonomously navigate the vehicle along at least a portion of a route.

As referred to herein, a “route” includes a pathway along which avehicle is navigated. A route can extend from a starting location toanother separate destination location, extend back to a destinationlocation which is the same as the starting location, etc. A route canextend along one or more various portions of one or more variousroadways. For example, a route between a home location and a worklocation can extend from a home driveway, through one or moreresidential streets, along one or more portions of one or more avenues,highways, toll ways, etc., and to one or more parking spaces in one ormore parking areas. Such routes can be routes which a user repeatedlynavigates over time, including multiple times in a given day (e.g.,routes between home and work locations may be travelled at least once ina given day).

In some embodiments, an ANS in a vehicle enables autonomous navigationof one or more portions of a route, based at least in part upon virtualcharacterizations of the one or more portions. Enabling autonomousnavigation can include making autonomous navigation of one or moreportions of a route available for selection by a user of the vehicle,such that the ANS can engage in autonomous navigation of the one or moreportions based on receiving a user-initiated command to engage in theautonomous navigation of the one or more portions.

A virtual characterization of a route portion, referred to herein as a“virtual route portion characterization”, can include a virtualcharacterization of a portion of a roadway which is included in a routebetween one or more locations. Such a characterization can be referredto as a “virtual roadway portion characterization”. A given virtualroadway portion characterization can be independent of any overallroutes which can be navigated by a vehicle, so that a route navigated bya vehicle includes a set of roadway portions navigated in series, andone or more virtual roadway portion characterizations can be used by theANS to autonomously navigate a vehicle along one or more various routes.A virtual route characterization can include a set of one or morevirtual roadway portion characterizations associated with a set of oneor more roadway portions for which autonomous navigation is enabled andone or more roadway portions for which autonomous navigation is notenabled, and the ANS can engage in autonomous navigation of the portionsfor which autonomous navigation is enabled, interacting with a vehicleuser, via a user interface of the vehicle, such that control of variouscontrol elements of the vehicle are transferred between the user and theANS based upon which roadway portions along the route the vehicle isnavigated.

In some embodiments, the ANS develops virtual roadway portioncharacterizations, virtual route characterizations, etc. via monitoringthe navigation of a vehicle in which the ANS is included along one ormore routes. Such monitoring can include monitoring one or more of theexternal environment, vehicle control elements, etc. as the vehicle ismanually navigated by a user along the one or more routes. As referredto herein, a user can include a driver of the vehicle, a passenger ofthe vehicle, some combination thereof, etc. As the user manuallynavigates the vehicle along a route, which can extend along one or moreroadway portions, the ANS can monitor various aspects of the manualnavigation, including monitoring various static features (e.g., roadsigns, curbs, lane markers, stoplights, trees, landmarks, physicallocation of the vehicle, etc.) encountered in various roadway portionsthrough which the vehicle is manually navigated, dynamic features (othervehicles navigating along the roadways, emergency vehicles, accidents,weather conditions, etc.) encountered in various roadway portions,driving characteristics of the user with regard to manual navigation ofthe vehicle (e.g., driving speed at various portions of the route, lanechanging speed and operations, acceleration events and rates,deceleration events and rates, position on the roadway relative tostatic features, spacing from other vehicles, etc.) through variousroadway portions, driving characteristics of mobile entities navigatingthrough various roadway portions in proximity to the manually-navigatedvehicle (e.g., in different lanes, ahead or behind the vehicle, etc.),some combination thereof, and the like. As used herein, a “mobileentity” can include a motorized vehicle, including an automobile, truck,etc.; a manually-powered vehicle, including a bicycle, pedi-cab, etc.; apedestrian, including a human, animal, etc.; some combination thereof,etc. A driving characteristic of a mobile entity, including a vehicle,pedestrian, etc., can include data characterizing how the mobile entitynavigates at least a portion of one or more roadway portions. Forexample, a driving characteristic of a pedestrian can indicate that thepedestrian travels along a roadway, within a certain distance of acertain edge of the roadway, at a certain speed. The system can processinput data, generated at various vehicle sensors based on themonitoring, to develop a virtual characterization of the route, whichcan include characterizations of the static features associated withvarious portions of the route (referred to herein as “static featurecharacterizations”), characterizations of driving rules associated withvarious portions of the route (referred to herein as “driving rulecharacterizations”), etc.

In some embodiments, the ANS updates one or more virtual roadway portioncharacterizations of one or more roadway portions included in a routebased upon monitoring successive manual navigations of the route. As theANS implements successive updates of a virtual characterization of oneor more roadway portions, based on multiple, successive navigations ofthe route, the ANS can develop and update a confidence indicatorassociated with one or more roadway portion characterizations associatedwith one or more roadway portions included in the route. For example,where the number of new static features in a roadway portion in aroutinely-navigated route, identified based on processing input datafrom various vehicle sensors, decreases with monitoring successivemanual navigations over the route, the confidence indicator associatedwith that virtual roadway portion characterization can increase with thesuccessive monitoring of navigation through the roadway portion. When acharacterization of one or more roadway portions has a confidenceindicator which at least meets a threshold confidence indication, theANS can enable an autonomous navigation feature of the vehicle for theone or more roadway portions, so that autonomous navigation of thevehicle along one or more portions of a route which include the one ormore roadway portions is enabled. The threshold level can bepredetermined. In some embodiments, the ANS can adjustably establish aconfidence indicator for one or more particular roadway portions, basedat least upon monitoring of navigation along the one or more particularroadway portions, signals received from one or more remote services,systems, etc., some combination thereof, or the like.

As used herein, an indicator can include one or more of a particularvalue, rank, level, some combination thereof, etc. For example, aconfidence indicator can include one or more of a confidence value,confidence rank, confidence level, some combination thereof, etc. Wherethe indicator includes one or more of a particular value, rank, level,some combination thereof, etc., the indicator can include one or more ofa range of indicators. For example, where the confidence indicatorincludes a confidence rank, the confidence indicator can include aparticular rank of a range of ranks, where the particular rank indicatesthe relative confidence associated with the indicator. In anotherexample, where the confidence indicator includes a confidence value, theconfidence indicator can include a particular value of a range of value,where the particular value within the range indicates the relativeconfidence associated with the indicator, relative to one or moreconfidence extremes represented by the range extremes.

In some embodiments, the threshold confidence indication can include oneor more indicators, values, ranks, levels, etc., and determining that aconfidence indicator at least meets a threshold confidence indicationcan include determining that a value, rank, level, etc. included in theconfidence indication at least matches a value, rank, level, etc.included in the confidence indication. In some embodiments, determiningthat a confidence indicator at least meets a threshold confidenceindication can include determining that a value, rank, level, etc.included in the confidence indication exceeds a value, rank, level, etc.included in the confidence indication. The threshold confidenceindication can, in some embodiments, be referred to as one or more of athreshold confidence indicator, threshold value, threshold rank,threshold level, some combination thereof, etc.

A virtual route characterization can include a set of virtual roadwayportion characterizations of the various roadway portions included inthe route. The virtual route characterization can include metadatareferencing the various virtual roadway portion characterizations andcan characterize driving rules associated with navigating betweenvarious roadway portions. In some embodiments, autonomous navigation ofone or more portions of a route is enabled based at least in part upon adetermination that sufficiently large portions of the route, including aset of one or more roadway portions, have associated virtualcharacterizations for which associated confidence indicators at leastmeet one or more thresholds. Such a set of roadway portions can includea limited selection of the roadway portions included in the route. Forexample, where a route includes multiple roadway portions which are 100feet in length, and a virtual roadway portion characterizationassociated with a single roadway portion has a confidence indicatorwhich meets the threshold confidence indication while the remainder ofroadway portion characterizations do not, autonomous navigation of thesingle roadway portion may remain disabled. In another example, wherethe virtual roadway portion characterization associated with multiplecontiguous roadway portions each have a confidence indicator which meetsthe threshold and the contiguous length of the roadway portions at leastmeets a threshold confidence indication, autonomous navigation of theportion of the route which includes the multiple contiguous roadwayportions can be enabled. A “threshold confidence indication” is referredto interchangeably herein as a “threshold”. The threshold can be basedat least in part upon one or more of the distance of the contiguousroadway portions, driving velocity through the one or more roadwayportions, estimated elapsed time of navigation through the one or moreroadway portions, some combination thereof, etc. The threshold can varybased on various roadway portions included in a route portion for whicha determination of whether to enable autonomous navigation is made.

In some embodiments, enabling autonomous navigation of one or moreportions of a route enables user-initiated engaging of autonomousnavigation through one or more particular roadway portions specifiedbased on user interaction with one or more user interfaces. For example,in response to autonomous navigation of a roadway portion being enabled,the ANS can present to a user, via a user interface included in avehicle, an option to engage autonomous navigation of the vehicle overone or more route portions which includes the one or more roadwayportions for which autonomous navigation is enabled. Based on a userinteraction with the user interface, the ANS can receive auser-initiated command to autonomously navigate the vehicle along one ormore portions of a route and, in response, engage in the autonomousnavigation via controlling one or more control elements of the vehicle.

The ANS can update a virtual characterization of a route in response todetecting, via monitoring of the external environment, a change in thestatic features of a route. For example, where a portion of a roadway ina route routinely travelled by a vehicle undergoes road constructionwhich results in an alteration to the roadway, lane closure, etc., theANS included in the vehicle can update a characterization of the routein response to monitoring the roadway portion as the vehicle travelsthrough the portion. As a result, the ANS can adapt to changes in aroute independently of preexisting route characterizations, “maps”,etc., including independently of data received from a remote service,system, etc., thereby reducing the amount of time required to enableautonomous navigation of the changed route. Furthermore, because routecharacterizations are developed by an ANS of a vehicle based on routeswhich are successively (i.e., repeatedly) navigated by a user of thevehicle, the routes for which autonomous navigation can be enabledinclude routes which the user of the vehicle tends to navigate,including routinely-navigated routes. As a result, the ANS canautonomously navigate routes routinely navigated by a vehicle userwithout requiring preexisting route characterizations. In addition,because the ANS can update virtual characterization of one or moreroadway portions, routes, etc. based on locally-monitoring changes inthe roadway portions via sensors included in the vehicle, the ANS canupdate the characterizations as soon as the changes are encountered bythe vehicle, thereby providing updates to virtual characterizations ofroutes which are navigated by a user and, in some embodiments, withoutrelying upon distributed update information from remote systems,services, etc. In some embodiments, an ANS can continue to updatevirtual characterizations of a roadway portion based on monitoring anautonomous navigation of a vehicle through the roadway portion.

In some embodiments, the ANS uploads virtual characterizations of one ormore routes to one or more remote system, service, etc. implemented onone or more computer systems which are external to the vehicle in whichthe ANS is located. Such uploading can be performed in response to adetermination that developing a virtual characterization with sufficientconfidence to enable autonomous navigation of the route requiresprocessing resources not available locally to the vehicle, in responseto a determination that the ANS is unable to build the confidenceindicator associated with a characterization at more than a certain ratewith successive monitoring of route navigation, etc. For example, wherecharacterization of a roadway portion requires processing capabilitieswhich are beyond the capabilities of computer systems included in avehicle, an ANS included in the vehicle can upload the characterizationof a route, one or more sets of input data associated with the route,etc. to a remote service, and the remote service can process the data,evaluate the characterization, etc. to develop a virtualcharacterization of the route. In another example, where an ANS of avehicle determines that the confidence indicator associated with avirtual roadway portion characterization does not increase at more thana certain rate with successive monitoring of navigation of the roadwayportion, the ANS can upload the characterization, input data associatedwith the route, etc. to a remote service, system, etc. and the remoteservice, system, etc. can further evaluate the characterization toaugment the confidence indicator of the characterization.

Where the remote system, service, etc. is unable to establish asufficient confidence indicator for a characterization, the remotesystem can flag the characterization for manual evaluation of thecharacterization and can modify the characterization in response tomanual inputs from one or more operators. In some embodiments, a manualinput can include a manually-specified confidence indicator of thecharacterization. Where such modification does not result inestablishing a sufficient confidence indicator of the characterization,the remote system can dispatch a dedicated sensor suite, which can beincluded in a dedicated sensor-bearing vehicle, to collect additionalinput data associated with one or more selected portions of the route inquestion, where the remote system can utilize the additional input datato modify the characterization. Where such modification does not resultin establishing a sufficient confidence indicator of thecharacterization, the remote system can flag the route and provide, tothe ANS, proposed alternative routes for the vehicle to navigate.

Alternative route proposals can include characterizations of one or moreof the alternative routes which can have sufficient confidenceindicators that the ANSs of the vehicle can enable autonomous navigationof said alternative routes and propose to a user of the vehicle, via aninterface, engaging of autonomous navigation of the alternative routerather than travel the first route. In some embodiments, the ANS invitesthe user of the vehicle, via a user interface, to manually navigate oneor more alternative routes, so that the ANS can develop virtualcharacterizations of the one or more alternative route as part ofenabling autonomous navigation of the one or more alternative routes.

In some embodiments, characterizing a route at an ANS of a vehicleincludes monitoring driving characteristics of one or more users of thevehicle in manually navigating the vehicle along one or more portions ofthe route. Such characterization can include monitoring drivingcharacteristics of one or more various mobile entities, including one ormore motorized vehicles, manually-powered vehicles, pedestrians, somecombination thereof, etc. travelling one or more portions of the routein proximity to the vehicle. Driving characteristics can includepositioning of one or more mobile entities relative to one or morestatic route features along the route, acceleration events relative tostatic route features, acceleration rates, driving velocities relativeto static features, dynamic features, etc. in one or more portions of aroute, etc. The ANS can process the monitored driving characteristics todevelop a set of driving rules associated with one or more portions ofthe route, where the set of driving rules determines the drivingcharacteristics according to which the ANS autonomously navigates thevehicle along the one or more portions of the route. For example, basedon monitoring driving characteristics of a user of the local vehicle,driving characteristics of various other vehicles, etc. along aparticular route, an ANS of the vehicle can develop a set of drivingrules associated with the route which can include rules specifyingdriving velocity ranges along various portions of the route, locationsof lanes along the route, permissible spacing distances between thevehicle and other vehicles along the route, locations along the routewhere particular acceleration rates ranges are permitted, locationswhere an amount of acceleration is to be applied (e.g., a roadwayincline), likelihood of certain dynamic event occurrences (accidents,abrupt acceleration events, roadway obstructions, pedestrians, etc.),some combination thereof, etc. Such sets of driving rules can bereferred to as driving rule characterizations and can be included in avirtual roadway portion characterization, virtual routecharacterization, some combination thereof, etc.

As a result, driving rules for a route can be developed“experientially”, i.e., based on monitoring how one or more usersactually navigate one or more vehicles along the route. Suchlocally-developed driving rules can provide an autonomous drivingexperience which is tailored to the particular conditions of the routebeing autonomously navigated, rather than using general driving rulesdeveloped independently of direct monitoring of how the route isactually navigated by vehicle users. In addition, in some embodiments,driving characteristics can be processed to develop characterizations ofstatic features included in one or more portions of a route. Forexample, monitoring of driving characteristics, of the local vehicle andone or more various external vehicles, when the vehicles are navigatingover a roadway which lacks at least some conventional static features(e.g., an unpaved roadway which lacks one or more of defined roadwayedges, lane boundary markers, etc.) can be processed to develop one ormore static feature characterizations, including a characterization ofthe edges of the roadway, a characterization of the boundaries of theunmarked lanes of the roadway, etc.

Driving rule characterizations can be subject to predetermined drivingconstraints, including driving velocity limits. For example, based onprocessing input data generated from monitoring of external environmentelements, the ANS can identify road signs, along various portions of aroute, which specify a speed limit for the roadway over which thatportion of the route extends. The ANS can analyze the input dataassociated with the monitoring of the road sign to identify theindicated speed limit and incorporate the identified speed limit as adriving velocity limit in the driving rules associated with that portionof the route, so that the ANS, when using the driving rulecharacterizations to autonomously navigate along at least that portionof the route, will at least attempt to not exceed the speed limitassociated with that portion of the route.

In some embodiments, multiple virtual roadway portion characterizationsincluded in multiple navigated routes can be developed at a vehicle, andsuch multiple characterizations can be incorporated into a set ofroadway portion characterizations, of various portions of multipledifferent roadways navigated via navigation of multiple various routes,where the various characterizations of the multiple roadway portions canbe used by the ANS to enable autonomous navigation along variousportions of various routes, including portions of multiple separateroutes.

In some embodiments, virtual characterizations of one or more roadwayportions can be uploaded from one or more ANSs, included in one or morevehicles, to a remote system, service, etc. Such a system can include anavigation monitoring system, where multiple ANSs of multiple separatevehicles are communicatively coupled to one or more navigationmonitoring system in a navigation network. The various characterizationsof various roadway portions can be incorporated, at the remote system,service, etc. into a “map” of roadway portion characterizations. Thecharacterization map can be distributed to the various ANSs of thevarious vehicles. Where multiple roadway portion characterizations ofone or more portions of a common roadway portion are received at theremote system, service, etc., incorporating the characterizations into amap can include developing a composite characterization of the roadwayportion based on processing the multiple characterizations of the one ormore portions. As a result, ANSs of various vehicles can characterizevarious routes travelled by those respective vehicles, and the variousroute characterizations developed locally at the various vehicles can beincorporated into a characterization map of route characterizationswhich can be distributed to other vehicles and utilized by ANSs of theother vehicles to enable autonomous navigation of the other vehiclesover the various routes.

The ANS included in a vehicle can develop the virtual characterizationat least partially locally to the vehicle, based on local monitoring ofthe environment proximate to the vehicle, thereby precluding a need fora preexisting detailed “map” of roadway portions included in a roadwaynetwork, where a map can include a set of virtual characterizations ofthe roadway portions organized and arranged in accordance with theirrelative physical, geographic locations, such that the map includes avirtual characterization of the roadway network and the various routeswhich can be navigated therein. Where a “map” is absent, the ANS can“bootstrap” a map into existence via developing virtualcharacterizations of one or more portions of one or more routes whichthe vehicle is navigated. In addition, because the ANS characterizesroutes which a vehicle navigates, a locally-developed map ofcharacterized routes can include routes which a user of the vehicletends to navigate, at the expense of routes which the user does notnavigate, thereby enabling autonomous navigation of routes which a userroutinely travels.

In some embodiments, an ANS is communicatively coupled to one or moreother ANSs and can communicate virtual route characterizations with theone or more other autonomous navigation systems. The ANS can beimplemented by one or more computer systems external to one or morevehicles and can modify virtual route characterizations received fromone or more other ANSs. Such modification can include incorporatingmultiple characterizations into one or more composite characterizations,modifying characterizations received from one or more sets of remoteANSs based on input data received from one or more other sets of remoteANSs, some combination thereof, etc.

Reference will now be made in detail to embodiments, examples of whichare illustrated in the accompanying drawings. In the following detaileddescription, numerous specific details are set forth in order to providea thorough understanding of the present disclosure. However, it will beapparent to one of ordinary skill in the art that some embodiments maybe practiced without these specific details. In other instances,well-known methods, procedures, components, circuits, and networks havenot been described in detail so as not to unnecessarily obscure aspectsof the embodiments.

It will also be understood that, although the terms first, second, etc.may be used herein to describe various elements, these elements shouldnot be limited by these terms. These terms are only used to distinguishone element from another. For example, a first contact could be termed asecond contact, and, similarly, a second contact could be termed a firstcontact, without departing from the intended scope. The first contactand the second contact are both contacts, but they are not the samecontact.

The terminology used in the description herein is for the purpose ofdescribing particular embodiments only and is not intended to belimiting. As used in the description and the appended claims, thesingular forms “a”, “an” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willalso be understood that the term “and/or” as used herein refers to andencompasses any and all possible combinations of one or more of theassociated listed items. It will be further understood that the terms“includes,” “including,” “comprises,” and/or “comprising,” when used inthis specification, specify the presence of stated features, integers,steps, operations, elements, and/or components, but do not preclude thepresence or addition of one or more other features, integers, steps,operations, elements, components, and/or groups thereof

As used herein, the term “if” may be construed to mean “when” or “upon”or “in response to determining” or “in response to detecting,” dependingon the context. Similarly, the phrase “if it is determined” or “if [astated condition or event] is detected” may be construed to mean “upondetermining” or “in response to determining” or “upon detecting [thestated condition or event]” or “in response to detecting [the statedcondition or event],” depending on the context.

Autonomous Navigation System

FIG. 1 illustrates a schematic block diagram of a vehicle 100 whichcomprises an autonomous navigation system (ANS) which is configured tocontrol various control elements of the vehicle to autonomously navigatethe vehicle along one or more driving routes, based at least in partupon one or more virtual characterizations of one or more portions ofthe one or more driving routes, according to some embodiments.

Vehicle 100 will be understood to encompass one or more vehicles of oneor more various configurations which can accommodate one or moreoccupants, including, without limitation, one or more automobiles,trucks, vans, etc. Vehicle 100 can include one or more interior cabinsconfigured to accommodate one or more human occupants (e.g., passengers,drivers, etc.), which are collectively referred to herein as vehicle“users”. An interior cabin can include one or more user interfaces,including vehicle control interfaces (e.g., steering wheel, throttlecontrol device, brake control device), display interfaces, multimediainterfaces, climate control interfaces, some combination thereof, or thelike. Vehicle 100 includes various control elements 120 which can becontrolled to navigate (“drive”) the vehicle 100 through the world,including navigate the vehicle 100 along one or more routes. In someembodiments, one or more control elements 120 are communicativelycoupled to one or more user interfaces included in an interior cabin ofthe vehicle 100, such that the vehicle 100 is configured to enable auser to interact with one or more user interfaces to control at leastsome of the control elements 120 and manually navigate the vehicle 100.For example, vehicle 100 can include, in the interior cabin, a steeringdevice, throttle device, and brake device which can be interacted withby a user to control various control elements 120 to manually navigatethe vehicle 100.

Vehicle 100 includes an autonomous navigation system (ANS) 110 which isconfigured to autonomously navigate vehicle 100. ANS 110 may beimplemented by any combination of hardware and/or software configured toperform the various features, modules or other components discussedbelow. For example, one or more multiple general processors, graphicalprocessing units, or dedicated hardware components, such as variouskinds of application specific integrated circuits (ASICs), fieldprogrammable gate arrays (FPGAs), or other dedicated circuitry mayimplement all (or portions in conjunction with program instructionsstored in a memory and executed by the processors) of routecharacterization module 112 and driving control module 114. One ormultiple computing systems, such as computer system 1300 in FIG. 13below may also implement ANS 110. ANS 110 is communicatively coupled toat least some of the control elements 120 of the vehicle and isconfigured to control one or more of the elements 120 to autonomouslynavigate the vehicle 100. As used herein, autonomous navigation of thevehicle 100 refers to controlled navigation (“driving”) of vehicle 100along at least a portion of a route based upon active control of thecontrol elements 120 of the vehicle 100, including steering controlelements, throttle control elements, braking control elements,transmission control elements, etc. independently of control elementinput commands from a user of the vehicle. Autonomous navigation caninclude ANS active control of driving control elements 120 whileenabling manual override of control of elements 120 via manual inputfrom a user via user interaction with one or more user interfacesincluded in the vehicle. For example, ANS 110 can autonomously navigatevehicle 100 in the absence of input commands from a vehicle user via oneor more user interfaces of the vehicle 100, and ANS 110 can ceasecontrol of one or more elements 120 in response to a user-initiatedinput command to the one or more elements 120 from one or more userelements of the vehicle 100.

ANS 110 includes a route characterization module 112 which develops andmaintains virtual characterizations of various roadway portions, drivingroutes, etc. and a driving control module 114 which is configured tocontrol one or more control elements 120 of the vehicle 100 toautonomously navigate the vehicle 100 along one or more portions of oneor more driving routes based on the virtual characterizations associatedwith the one or more portions of the route.

Vehicle 100 includes a set of one or more external sensor devices 116,also referred to as external sensors 116, which can monitor one or moreaspects of an external environment relative to the vehicle 100. Suchsensors can include camera devices, video recording devices, infraredsensor devices, radar devices, light-scanning devices including LIDARdevices, precipitation sensor devices, ambient wind sensor devices,ambient temperature sensor devices, position-monitoring devices whichcan include one or more global navigation satellite system devices(e.g., GPS, BeiDou, DORIS, Galileo, GLONASS, etc.), some combinationthereof, or the like. One or more of external sensor devices 116 cangenerate sensor data associated with an environment as the vehicle 100navigates through the environment. Sensor data generated by one or moresensor devices 116 can be communicated to ANS 110 as input data, wherethe input data can be used by the route characterization module 112 todevelop, update, maintain, etc. a virtual characterization of one ormore portions of the routes through which the vehicle 100 is beingnavigated. External sensor devices 116 can generate sensor data when thevehicle 100 is being manually navigated, autonomously navigated, etc.

Vehicle 100 includes a set of one or more internal sensors 118, alsoreferred to as internal sensor devices 118, which can monitor one ormore aspects of vehicle 100. Such sensors can include camera devicesconfigured to collect image data of one or more users in the interiorcabin of the vehicle, control element sensors which monitor operatingstates of various control elements 120 of the vehicle, accelerometers,velocity sensors, component sensors which monitor states of variousautomotive components (e.g., sensors which monitor wheel-turningdynamics of one or more wheels of the vehicle), etc. One or more ofinternal sensor devices 118 can generate sensor data associated with thevehicle 100 as the vehicle 100 navigates through the environment. Sensordata generated by one or more internal sensor devices 118 can becommunicated to ANS 110 as input data, where the input data can be usedby the route characterization module to develop, update, maintain, etc.a virtual characterization of one or more portions of the routes throughwhich the vehicle 100 is being navigated. Internal sensor devices 118can generate sensor data when the vehicle 100 is being manuallynavigated, autonomously navigated, etc.

Vehicle 100 includes one or more sets of interfaces 130. One or moreinterfaces 130 can include one or more user interface devices, alsoreferred to as user interfaces, with which a user of vehicle 100 caninteract to interact with one or more portions of ANS 100, controlelements 120, etc. For example, an interface 130 can include a displayinterface with which a user can interact to command ANS 110 to engageautonomous navigation of vehicle 100 along one or more particularroutes, based at least in part upon one or more virtualcharacterizations of one or more portions of the route.

In some embodiments, one or more interfaces 130 includes one or morecommunication interfaces which can communicatively couple ANS 110 withone or more remote services, systems, etc. via one or more communicationnetworks. For example, an interface 130 can include a wirelesscommunication transceiver which can communicatively couple ANS 110 withone or more remote services via one or more wireless communicationnetworks, including a cloud service. ANS 110 can communicate virtualroute characterizations, various sets of input data, etc. to a remoteservice, system, etc. via one or more interfaces 130, receive virtualcharacterizations of one or more roadway portions, etc. from the one ormore remote services, systems, etc., and the like.

Route Characterization Development

In some embodiments, an ANS can develop one or more virtualcharacterizations of one or more roadway portions, which the ANS cansubsequently utilize to autonomously navigate a vehicle through the oneor more roadway portions, based on monitoring various static features,dynamic features, driving characteristics, etc. while the vehicle isnavigated through the one or more roadway portions. Such monitoring canbe implemented when the vehicle is manually navigated through the one ormore roadway portions by a vehicle user, such that the ANS can develop acharacterization of the static features of a route by monitoring thestatic features when the vehicle is manually navigated along the routeand can develop a set of driving rules specifying how ANS is to navigatea vehicle through the one or more roadway portions based on monitoringdriving characteristics of the user's manual navigation of the vehiclethrough the roadway portion, monitoring driving characteristics of othervehicles navigating through the roadway portion in proximity to thelocal vehicle, etc. As a result, a vehicle ANS can both develop acharacterization of the physical state of the route (e.g. staticfeatures) and a characterization of how to navigate along the route(e.g., driving rules) based on monitoring a manual navigation along theroute and various features observed while the vehicle is manuallynavigated through the route. As a result, the ANS can developcharacterizations used to engage in autonomous navigation of a route,independently of externally-received or preexisting characterizationdata.

FIG. 2 illustrates an illustration of a vehicle 202, which includes anANS 201 and a set of sensor devices 203, navigating through a region 200which includes multiple roadway portions 210A-D of roadways 208, 218,according to some embodiments. Vehicle 202 can be manually navigatedthrough the route, and sensor devices 203 can include one or moreexternal sensor devices, vehicle sensor devices, etc. Vehicle 202 andANS 201 can be included in any of the embodiments of a vehicle, ANS,etc.

As shown in the illustrated embodiment, a region 200 which includes oneor more various roadways 208, 218 can be divided into various roadway“portions” 210. An ANS can demarcate various roadway portions based onposition data received from one or more position sensors in the vehicle202, one or more various static features included in region 200, etc.Different roadway portions 210 can have different sizes, which can bebased at least in part upon driving velocity of vehicles navigating theroadway in which the roadway portions are included, environmentalconditions, etc. For example, roadway 208 can be a highway where theaverage driving velocity is higher than that of roadway 218 which can bean onramp; as a result, each of roadway portions 210A-C of roadway 208can be larger than roadway portion 210D of roadway 218.

In some embodiments, as a vehicle is navigated (manually, autonomously,etc.) through one or more various roadways, an ANS included in thevehicle monitors various static feature characteristics of variousroadway portions of the various roadways, monitors various drivingcharacteristics of the vehicle user, other proximate vehicles, etc., asthe vehicle navigates through the various roadway portions, somecombination thereof, and the like. Such monitoring, which can beimplemented by ANS based on input data received from sensors 203, caninclude processing the various characteristics to develop virtualcharacterizations of the one or more roadway portions through which thevehicle is navigated. The ANS can subsequently utilize the virtualcharacterizations to engage in autonomous navigation of the vehiclethrough the one or more roadway portions.

In some embodiments, monitoring of various static featurecharacteristics of a roadway portion includes identifying various staticfeatures associated with the roadway portion. For example, in theillustrated embodiment, where vehicle 202 is navigating through roadwayportion 210B of roadway 208, sensor devices 203 can monitor variousaspects of the external environment of region 200 to identify variousstatic features associated with the roadway portion 210B, including theedges 212A-B, lane boundaries 217A-B, lanes 214A-C of roadway 208. Insome embodiments, one or more sensor devices 203 can identify thematerial composition of one or more portions of roadway 208. Forexample, a sensor device 203 of vehicle 202 can include an internalsensor device which can monitor dynamics of the turning of the wheels ofthe vehicle 202 to determine whether the vehicle is presently navigatingover an asphalt surface, gravel surface, concrete surface, dirt surface,etc.

In some embodiments, sensor devices 203 can monitor various aspects ofthe external environment of region 200 to identify various staticfeatures associated with the roadway portion 210B of roadway which areexternal to the roadway 208 itself, including static landmarks 213,natural environmental elements 215, road inclines 242, road signs 221,223, etc.

In some embodiments, identifying a static feature includes identifyinginformation associated with the static feature, including identifyinginformation presented on a road sign. For example, region 200 includesroad signs 221, 223, where road sign 221 indicates the presence ofonramp 218 and road sign 223 is a speed limit sign which indicates aspeed limit for at least roadway portion 210B. Monitoring staticfeatures associated with roadway portion 210B as vehicle 202 navigatesthrough the portion 210B includes the ANS, based on monitoring theexternal environment in region 200, determining the physical location ofroad signs 221, 223 in the roadway portion 210B, identifying theinformation presented on the road signs 221, 223, and including suchinformation as part of the virtual characterization of the roadwayportion. For example, ANS 201 can, based on monitoring of region 200 bysensors 203 as vehicle 202 navigates through roadway portion 210B,identify the physical position of road sign 223 in portion 210B,identify that road sign 223 is a speed limit sign, identify the speedlimit indicated by the road sign as 55 miles/hour, and incorporate suchinformation into a driving rule characterization associated with atleast the roadway portion 210B as a maximum driving velocity whennavigating through at least portion 210B.

In some embodiments, sensor devices 203 can monitor drivingcharacteristics of vehicle 202, other vehicles 232-236 navigatingthrough roadway portions 210 proximate to vehicle 202, etc. Such drivingcharacteristics can be utilized by ANS 201 to develop one or moreportions of the virtual characterization of one or more roadwayportions, including one or more static feature characterizations,driving rules, etc. For example, based on monitoring driving velocity ofone or more of vehicle 202, vehicles 232-236, etc. navigating throughroadway portions 210A-C, ANS 201 can determine a driving velocity rangefor autonomously navigating through the one or more roadway portions210A-C. ANS 201 can determine, based on monitoring drivingcharacteristics of the one or more vehicles 202, 232-236, a permissiblerange of acceleration rates associated with navigating throughparticular portions 210A-C, locations in the roadway portions whereacceleration events are likely, a location of lanes 214A-C in theroadway, a permissible range of spacing distances 252, 254, betweenvehicle 202 and other vehicles navigating one or more roadway portions210A-C in a common lane 214 as vehicle 202, a permissible range ofspacing distances 256A-B between vehicle 202 and one or more boundariesof the lane 214B in which the vehicle 202 is navigating, etc.

In some embodiments, driving characteristics monitored while a vehiclenavigates through a roadway portion are associated with one or moreother roadway portions. For example, where ANS 201 monitors a spacing252 between vehicle 202 and another following vehicle 234 when vehiclenavigates through portion 210B, ANS 201 can develop a driving rule whichspecifies the spacing 252 as a minimum permissible spacing betweenvehicle 202 and a vehicle 236 ahead of vehicle 202 when vehicle 202 isnavigating through roadway portions 210A and 210C. Such associating canbe based at least in part upon similarities between roadway portions.For example, driving characteristics determined based on input datagenerated while vehicle 202 is navigating through one or more of roadwayportions 210A-C can be used to develop driving rule characterizationsincluded in virtual characterizations of any of similar roadway portions210A-C while such driving characteristics are not used to developdriving rules included in the virtual characterization of dissimilarroadway portion 210D.

FIG. 3 illustrates an illustration of a vehicle 302, which includes anANS 301 and a set of sensor devices 303, navigating through a region 300which includes multiple roadway portions 310A-C of roadways 208, 218,according to some embodiments. Vehicle 302 can be manually navigatedthrough the route, and sensor devices 203 can include one or moreexternal sensor devices, vehicle sensor devices, etc. Vehicle 302 andANS 301 can be included in any of the embodiments of a vehicle, ANS,etc.

In some embodiments, an ANS can utilize monitored drivingcharacteristics while a vehicle navigates through a roadway portion todetermine static feature characteristics of the roadway portion, whichare included in the virtual characterization of the roadway portion.

For example, in the illustrated embodiment of FIG. 3, vehicle 302 isnavigating along an unpaved roadway 308 which lacks well-defined edgesand lane boundaries. ANS 301 can determine edges 312A-B of the roadway308, lanes 314A-B, and a lane boundary 317 based at least in part uponmonitoring the driving characteristics of vehicle 302 when a user ofvehicle 302 navigates the vehicle 302 through one or more roadwayportions 310A-C, monitoring the driving characteristics of one or moreother vehicles 332 when the other vehicle 332 navigates the vehicle 302through one or more roadway portions 310A-C, some combination thereof,or the like. As shown, ANS 301 can determine, based on monitoring thedriving characteristics of both vehicle 302 and vehicle 332, the edges312A-B, lanes 314A-B, and boundary 317. In addition, ANS 301 candetermine that lane 314B is associated with driving in an oppositedirection, relative to driving in lane 314A.

FIG. 4 illustrates a block diagram of an autonomous navigation system(ANS), according to some embodiments. As noted above with regard to FIG.1, ANS 400 can be implemented by one or more computer systems and/or byany combination of hardware and/or software configured to perform thevarious features, modules or other components discussed below, such asone or more multiple general processors, graphical processing units, ordedicated hardware components, and can be included in any of theembodiments of ANSs.

ANS 400 includes various modules, which can be implemented by one ormore instances of hardware, software, etc. ANS 400 comprises a routecharacterization module 401 which is configured to develop virtualcharacterizations of various roadway portions based on monitoring inputdata generated based on a vehicle in which the ANS 400 is includednavigating through the various roadway portions.

ANS 400 includes an input data module 410 which is configured to receiveinput data from various data sources, which can include one or moresensor devices. In some embodiments, module 410 is configured to processat least some input data and determine various static featurecharacterizations, driving rule characterizations, etc. based on the oneor more instances of input data. Input data can be received from variousdata sources based on a vehicle navigating one or more roadway portions,where such navigation can be manual, autonomous, some combinationthereof, etc.

Input data module 410 includes an external sensor module 412 which isconfigured to receive input data from one or more external sensors of avehicle, where the input data can be generated by the one or moreexternal sensors concurrently with the vehicle navigating through one ormore roadway portions along one or more driving routes.

Module 412 can include a static feature module 414 which monitors one ormore static features included in one or more roadway portions as thevehicle navigates through the one or more roadway portions. Suchmonitoring can include determining a geographic location of a staticfeature, identifying information presented by the static feature,categorizing the static feature, etc. For example, module 414 canidentify a roadway edge, lane boundary, road sign, etc. based onmonitoring image data generated by a camera device monitoring theexternal environment of the vehicle.

In some embodiments, module 414 monitors the physical location (alsoreferred to herein as the “geographic location”, “geographic position”,etc.) of vehicle 401 as the vehicle 401 navigates through the one ormore roadway portions. Such monitoring can include determining ageographic location of the vehicle in which the ANS 400 is located basedat least in part upon input data received from a global navigationsatellite system device. Such physical location data can be used todevelop static feature characterizations of the roadway portion throughwhich the vehicle in which the ANS 400 is located is navigating,including the physical location of the roadway portion, driving rulecharacterizations of the roadway portion, including the driving velocitythrough the roadway portion, some combination thereof, etc.

Module 412 can include a dynamic feature module 416 which monitors oneor more dynamic features encountered as the vehicle navigates throughone or more roadway portions, including other vehicles navigatingthrough the roadway portion, vehicles stopped in the roadway portion,emergency vehicles, vehicle accidents, pedestrians, ambientenvironmental conditions, visibility, etc. Based on the dynamic featuresencountered in one or more roadway portions, module 416 can develop oneor more driving rule characterizations, static featurecharacterizations, etc. associated with the roadway portions.

Module 412 can include a driving characteristics module 418 which canmonitor driving characteristics of one or more external vehicles,relative to the vehicle in which ANS 400 is included, navigating inproximity to the vehicle when the vehicle is navigating through one ormore roadway portions. Such driving characteristics can include drivingvelocity, acceleration rate, spacing between roadway boundaries, laneboundaries, other vehicles, physical position, etc. Based on themonitored driving characteristics of the one or more external vehiclesin one or more roadway portions, module 418 can develop one or moredriving rule characterizations, static feature characterizations, etc.associated with the roadway portions.

Input data module 410 includes an internal sensor module 422 which isconfigured to receive input data from one or more internal sensors of avehicle, where the input data can be generated by the one or moreinternal sensors concurrently with the vehicle in which the ANS 400 islocated navigating through one or more roadway portions along one ormore driving routes.

Module 422 can include a control element module 426 which monitors oneor more instances of input data associated with one or more controlelements of vehicle in which the ANS 400 is located as the vehiclenavigates through one or more roadway portions. Such input data caninclude throttle position data, steering element position, brakingdevice state, wheel turning rate, commands to such elements from one ormore user interfaces, some combination thereof, etc. Based on thecontrol element input data, module 426 can develop one or more drivingrule characterizations associated with the roadway portions throughwhich the vehicle in which the ANS 400 is located is navigating, one ormore static feature characterizations of the roadway portion throughwhich the vehicle in which the ANS 400 is located is navigating, etc.

Module 422 can include a local driving characteristic module 428 whichcan monitor driving characteristics of vehicle in which the ANS 400 islocated as the vehicle is navigating through one or more roadwayportions, including driving characteristics of a user of the vehicle asthe user is manually navigating the vehicle through the one or moreroadway portions. Such driving characteristics can include drivingvelocity, acceleration rate, spacing between roadway boundaries, laneboundaries, other vehicles, physical position, etc. Based on themonitored driving characteristics of the vehicle in which the ANS 400 islocated in one or more roadway portions, module 428 can develop one ormore driving rule characterizations, static feature characterizations,etc. associated with the one or more roadway portions.

ANS 400 includes a processing module 430 which is configured to processinput data received at module 410 to develop one or more virtualcharacterizations of one or more roadway portions. In some embodiments,module 430 is configured to process at least some input data anddetermine a virtual characterization of a roadway portion which includesa characterization of static features included in the roadway portion, acharacterization of driving rules for navigating through the roadwayportion, some combination thereof, etc.

Module 430 can include a static feature characterization module 432which is configured to develop a virtual characterization of staticfeatures of a particular roadway portion, based on one or more instancesof input data associated with the roadway portion received at module410. Module 430 can include a driving rule characterization module 434which is configured to develop a virtual characterization of drivingrules associated with a particular roadway portion, based on one or moreinstances of input data associated with the roadway portion received atmodule 410. Modules 432, 434 are configured to generate virtualcharacterizations associated with one or more roadway portions based onsensor data generated and received at module 410 when vehicle 401navigates through the one or more roadway portions. In some embodiments,module 430 is configured to generate one or more virtual roadway portioncharacterizations of one or more roadway portions, where saidcharacterizations include the various driving rule characterizations andstatic feature characterizations associated with the roadway portion. Insome embodiments, module 430 is configured to generate one or morevirtual route characterizations of one or more driving routes, where agenerated virtual route characterization includes at least a set ofvirtual roadway portion characterizations of the various roadwayportions included in the route.

In some embodiments, module 430 is configured to update apreviously-developed virtual characterization of a roadway portion,based at least in part upon additional sets of input data received atmodule 410 when vehicle in which the ANS 400 is located subsequentlynavigating through the roadway portion at least once. In someembodiments, one or more of modules 432, 434 can update one or moreportions of a virtual characterization of a roadway portion based atleast in part upon determining a difference between one or more staticfeatures, driving characteristics, etc. associated with the subsequentnavigation through the roadway portion. For example, where aninitially-developed virtual characterization of a roadway portionincludes a static feature characterization of the roadway portion, andwhere module 432 determines, based on processing input data generatedwhen vehicle in which the ANS 400 is located subsequently navigatesthrough the same roadway portion again, the presence of an additionalstatic feature, including a road sign, not characterized in the initialstatic feature characterization, module 432 can update the staticfeature characterization of the roadway portion to incorporate theadditional static feature.

In some embodiments, module 430 is configured to evaluate a virtualcharacterization of a roadway portion to determine whether to enableautonomous navigation of at least the roadway portion based on thevirtual characterization. Such evaluation can include determining aconfidence indicator associated with the virtual characterization of aroadway portion, tracking changes in the confidence indicator oversuccessive monitoring of the roadway portion, based on successivenavigations of vehicle in which the ANS 400 is located through theroadway portion, comparing the confidence indicator with one or morevarious thresholds, etc.

Module 430 can include an evaluation module 436 which is configured toevaluate a virtual characterization of a roadway portion, such that themodule 436 associates a confidence indicator with the characterization.A confidence indicator can indicate a confidence that the virtualcharacterization characterizes, within a certain level of accuracy,precision, some combination thereof, or the like of the static features,driving characteristics, etc. associated with the roadway portion, etc.For example, a confidence indicator associated with a virtualcharacterization of a roadway portion can indicate a confidence that thevirtual characterization characterizes, within a certain level ofaccuracy, all of the roadway static features (e.g., roadway edges,lanes, lane boundaries, road signs, etc.) associated with the roadwayportion.

In some embodiments, module 436 updates the confidence indicator of avirtual characterization of a roadway portion over time based onsuccessive processing of successively-generated sets of input dataassociated with the roadway portion. For example, where the vehicle inwhich the ANS 400 is located navigates through a given roadway portionmultiple times, and successive processing of the successive sets ofinput data associated with the roadway portion result in fewer or noadditional changes to the developed virtual characterization of theroadway portion, module 436 can successively adjust the confidenceindicator associated with the virtual characterization to reflect anincreased confidence in the accuracy and precision of the virtualcharacterization. Where a set of input data, upon processing, results ina substantial revision of the virtual characterization of a roadwayportion, module 436 can reduce the confidence indicator associated withthe virtual characterization.

In some embodiments, evaluation module 436 evaluates one or moreportions of a driving route and determines whether to enable autonomousnavigation of the vehicle in which the ANS 400 is located through theone or more portions of the driving route, based at least in part upon adetermination of whether confidence indicators associated with aa set ofroadway portion virtual characterizations, which at least meet a certaincontiguous distance threshold, at least meet a certain threshold level.For example, evaluation module 436 can determine, based at least in partupon determining that a continuous set of twelve (12) roadway portionsincluded in a particular driving route have associated confidenceindicators which exceed a threshold confidence indication whichcomprises a particular level of 90%, module 436 can enable anavailability of autonomous navigation of at least a portion of thetwelve roadway portions. Such an enabling can include establishing oneor more “transition” route portions in which a transition between manualand autonomous navigation occurs. Such a transition can include anautonomous transition portion in which a user is instructed to releasemanual control of one or more control elements of the vehicle in whichthe ANS 400 is located, a manual transition portion in which a user isalerted to assume manual control of one or more control elements of thevehicle in which the ANS 400 is located, some combination thereof, etc.

Module 430 can include a curation module 438 which is configured tomonitor characterizations of one or more roadway portions to determinewhether additional processing is needed to enable autonomous navigationof the one or more roadway portions. Such additional processing caninclude implementing one or more processing operations at one or morecomputer systems implementing ANS 400. The monitoring at module 438 caninclude monitoring successive changes in a confidence indicatorassociated with a virtual characterization over time and determiningwhether additional processing is needed based on the time-variation ofthe confidence indicator. For example, module 438 can monitor the rateof change of a confidence indicator associated with a virtualcharacterization over time.

In some embodiments, module 438 determines that additional processing ofthe virtual characterization of a roadway portion, input data associatedwith the roadway portion, some combination thereof, etc. is required,based on a determination that a rate of change of an associatedconfidence indicator does not meet a threshold rate value. For example,if a confidence indicator associated with a virtual characterization ofa particular roadway portion fluctuates over time and does not increaseat more than a particular rate, module 438 can determine that additionalprocessing associated with that roadway portion is required. Suchadditional processing can include evaluating multiple sets of input datagenerated during multiple separate navigations through the roadwayportion, evaluating one or more portions of the virtual characterizationwhich are determined to change repeatedly with successive sets of inputdata, etc.

In some embodiments, module 438 is configured to determine whether toupload one or more of a virtual characterization of a roadway portion,one or more sets of input data associated with a roadway portion, etc.to one or more remote systems, services, etc. for additional curation,processing, etc. For example, if, after additional processing by acomputer system implementing ANS 400, a confidence indicator associatedwith a virtual characterization does not at least meet a thresholdlevel, module 438 can determine to upload the virtual characterizationand various sets of input data associated with the roadway portion toremote service, which can include a cloud service.

Module 400 includes an interface module 450 which is configured topresent information associated with autonomous navigation to a user ofthe vehicle in which the ANS 400 is located via one or more userinterfaces of vehicle in which the ANS 400 is located, receiveuser-initiated commands from the user via one or more user interfaces ofthe vehicle in which the ANS 400 is located, etc. For example, based ona determination at module 430 to enable autonomous navigation of aportion of a driving route which includes a set of roadway portions,module 450 can present a representation of the driving route, includinga representation of the portion of the driving route for whichautonomous navigation is enabled, along with an invitation to the userto indicate whether to engage autonomous navigation of the portion ofthe driving route. Interface module 450 can receive user-initiatedcommands to engage autonomous driving of one or more portions of adriving route. In some embodiments, the ANS 400 can engage autonomousnavigation of a portion of a driving route, for which autonomousnavigation is enabled, independently of user interaction with the ANSvia one or more user interfaces. For example, upon enabling ofautonomous navigation for a roadway portion, the ANS can automatically,without user intervention, engage autonomous navigation upon the vehiclein which the ANS is located encountering the roadway portion. Suchautomatic engagement of autonomous navigation can be selectively enabledbased on user interaction with the ANS via one or more user interfacesincluded in the vehicle.

Module 400 includes a communication module 460 which is configured tocommunicatively couple with one or more remote services, systems, etc.,via one or more communication networks. For example, module 460 cancommunicatively couple with a remote service, system, etc. via awireless communication network, cellular communication network,satellite communication network, etc. module 460 can communicate datawith the one or more remote services, systems, etc., including uploadingvirtual characterizations, input data sets, etc. to a remote service,system, etc., receiving one or more virtual characterizations from theremote service, system, etc., some combination thereof, or the like.

Module 400 including a database module 440 which is configured to storeone or more virtual characterizations 442. Such characterizations caninclude one or more virtual roadway portion characterizations, one ormore virtual route portions which includes one or more sets of virtualroadway portion characterizations, some combination thereof, etc. Asnoted above, virtual characterizations 442 can be developed at module430 based on one or more sets of input data generated based onmonitoring one or more of external data, vehicle data, etc. when thevehicle in which the ANS 400 is located navigates through a particularroadway portion. A virtual route characterization can include acharacterization of the various roadway portions included in a route,including an indication of the start and destination locations of theroute. For example, where a vehicle routinely navigates along aparticular set of roadways portions between two locations, a virtualcharacterization can be developed for each roadway portion, and avirtual route characterization indicates the various roadway portionsincluded in the route. In some embodiments, the virtual routecharacterization includes an indication of which roadway portions in theroute autonomous navigation is enabled.

As shown, the various virtual characterizations 442 included in databasemodule 440 can include, for each characterization 442, a set of drivingrule characterizations 444 characterizing a set of driving rules whichcan be utilized to autonomously navigate vehicle 401 through one or moreroadway portions, and a set of static feature characterizations 446which characterize the various static features included in one or moreroadway portions. In addition, a virtual characterization 442 caninclude a confidence indicator 448 associated with the characterization442.

FIG. 5A-C illustrate a user interface associated with the autonomousnavigation system, according to some embodiments. The user interface canbe generated by any of the embodiments of ANSs.

User interface 500 is a display interface which presents a graphicaluser interface (GUI) 502 of a display screen. The illustrated GUI 502illustrates a representation of a map which includes a set of roadways510A-E in a particular geographic region. The set of roadways 510A-E canbe referred to at least a portion of a roadway network.

In some embodiments, a user interface presented to a user of a vehiclein which an ANS is included includes a representation of a route whichthe vehicle can be navigated between one or more locations. Therepresentation of the route can be presented based on one or moreuser-initiated commands to the interface which command that a particularre-characterized route be displayed on the represented map of GUI 502.Each route can be associated with a particular title (e.g., “route towork”), and a user can interact with one or more user interfaces toselect the particular route based on identifying the particular titleassociated with the route which a user desires to navigate a vehicle. Insome embodiments, a user interface presents a representation of aparticular route based at least upon an anticipation that a user of thevehicle will desire to navigate the vehicle along the particular route.Such an anticipation can be based at least in part upon an anticipationthat the vehicle is presently located at a physical location whichcorresponds to a start location of one or more particular routes, at aparticular time of day which corresponds to a time range during which aparticular route has historically been navigated from the startlocation, etc.

In some embodiments, the GUI presents an interface element (e.g., one ormore icons, message prompts, etc.) which includes one or moreinteractive elements, each representing a separate route, which a usercan interact with to command the interface to present a representationof a particular route. Each route can be a route for which a particularvirtual characterization is stored at the ANS and can be associated witha particular route title. The route title can be specified by a user, bythe ANS, some combination thereof, etc.

In some embodiments, the GUI presents an interface element whichindicates a limited selection of the routes for which the ANS storesvirtual characterizations, based at least in part upon one or more ofthe present location of the vehicle in which the interface and ANS arelocated, the present time of day at said location, some combinationthereof, etc. For example, where a vehicle is presently locatedproximate to one or more locations which are a starting location for oneor more routes for which a virtual characterization is stored in theANS, the interface can present an interactive element, including one ormore presentations of the one or more routes and prompt a user tointeract with one or more of the representations to select one or moreof the routes. Upon receiving an indication of a user interaction withone or more particular representations, the interface can interact withthe ANS to present a graphical representation of the one or more routesassociated with the one or more particular representations.

In FIG. 5A, multiple roadways 510A-E are presented on GUI 502, whichalso presents a plurality of location icons 520A-D associated withvarious locations. In the illustrated embodiment, the vehicle in whichthe interface 500 is located can be presently proximate to location520A, which can be a starting location for several separate routes toseparate destination locations. As also shown, three locations 520B-Dare presented on the GUI at locations, relative to the illustratedroadways 510, which correspond to the physical location of saidlocations relative to said roadways. Each separate location can be adestination location for one or more driving routes which originate atstarting location 520A.

In some embodiments, the separate locations 520B-D can be presented inGUI in response to identifying that the vehicle in which the interface500 is located is proximate to location 520A, identifying multipleseparate driving routes for which location 520A is a starting location,and identifying locations 520B-D as destination locations of one or moreof said identified separate driving routes. For example, in response todetecting that a user has occupied the vehicle, the ANS and interfacecan be interoperable to identify, based on input data received at theANS from one or more sensor devices, a present location of the vehicle.The ANS can identify one or more starting locations, of one or moredriving routes for which virtual characterizations are stored at theANS, which are proximate to the present location of the vehicle, andfurther identify one or more destination locations of the one or moredriving routes. The interface can present, to the user, graphicalrepresentations of the identified starting locations and destinationlocations, and can further present one or more interactive interfaceelements with which the user can interact to select one or more of thedriving routes. As shown, GUI 502 includes an interface element 580which includes three separate representations 590A-C of three separatedriving routes. Each driving route can have starting location 520A and aseparate one of the illustrated destination locations 520B-D. As shown,each representation 590A-C includes a route title associated with therespective driving route. Each representation can be interactive, suchthat a user can interact with one or more of the representations 590 toselect one or more of the driving routes associated with therepresentations. In response to a user-initiated interaction with one ormore particular representations 590A-C, one or more of the ANS andinterface can identify that a user has selected a particular drivingroute and present a representation of same on the GUI.

FIG. 5B illustrates GUI 502 presenting a representation of a particulardriving route 530 which extends between a start location 520A and adestination location 520B. The driving route 530 includes a set ofroadway portions 532 extending between the two locations 520A-B. In someembodiments, the represented route 530 does not indicate the boundariesbetween the various roadway portions 532 included in the route 530.

In some embodiments, a particular represented driving route includes oneor more portions for which autonomous navigation is enabled. In theillustrated embodiment, the representation 530 of a driving routeincludes a representation of a portion 540 of the route for whichautonomous navigation is enabled. The representation can include amessage 570 which invites a user to indicate, via interaction with oneor more interactive elements 572 of the GUI 502, whether to engageautonomous navigation of the portion 540 of the route for whichautonomous navigation is enabled.

In some embodiments, where a portion 540 of a route 530 has autonomousnavigation thereof enabled, a portion of said portion 540 is associatedwith a transition between manual navigation and autonomous navigation.For example, transition region 546 of portion 540 is associated withtransitioning from autonomous navigation of portion 540 to manualnavigation of a remainder of route 530 to location 520B. In someembodiments, the GUI is configured to present various messages to a userbased on a present location of the vehicle in which the interface device500 is included. For example, where the vehicle is being autonomouslynavigated through portion 540 and crosses boundary 545 into thetransition portion, GUI 502 can present an alert message alerting theuser to imminent transfer to manual navigation. Where the vehiclecrosses boundary 547, autonomous navigation can be disabled, and amessage alerting the user to this fact can be presented on GUI 502. Oneor more alerts presented on user interface 502 can be accompanied byother alert signals presented via one or more other user interfaces. Forexample, a presentation of an alert message on GUI 502 can beaccompanied by an audio signal presented via one or more speakerinterface devices of the vehicle.

In some embodiments, portion 540 is represented distinctly from aremainder of route 530. For example, portion 540 can be represented in adifferent color relative to a remainder of route 530. In anotherexample, an animation effect can be presented on portion 540.

FIG. 5C illustrates a user interface associated with the autonomousnavigation system, according to some embodiments. The user interface canbe generated by any embodiments of ANSs. In some embodiments, where theportions of a route for which autonomous navigation is enabled changesover time, the representation of the portion 540 of the route for whichautonomous navigation is enabled can change accordingly. For example, asshown, where the roadway portions in route for which autonomousnavigation is enabled include additional portions extending towardlocation 520B, relative to the portions as shown in FIG. 5B, therepresentation of portion 540 can be shown in GUI 502 to be extendedaccordingly. Where the portion 540 is recently extended, within acertain period of time, the extended element of portion 540 can berepresented distinctly from the remainder of portion 540, includingbeing represented in a different color from the remainder of portion540.

FIG. 6 illustrates a user interface associated with the autonomousnavigation system, according to some embodiments. The user interface canbe generated by any embodiments of ANSs.

In some embodiments, where one or more alternative routes between one ormore particular locations, relative to a route most recently navigatedbetween the one or more particular locations, are available, anindication of such one or more alternative routes can be presented to auser via a user interface and the user can be requested to engage innavigation of the one or more alternative routes, relative to the mostrecently-navigated route.

An alternative route can be proposed to a user based upon adetermination that a confidence indicator associated with a virtualcharacterization of one or more roadway portions included in a drivingroute is not sufficiently high to enable autonomous navigation of one ormore portions of the route. The alternative route can include a routefor which autonomous navigation is enabled for one or more portionsthereof, such that a proposal to a user to engage in navigation of thealternative route includes an invitation to engage in autonomousnavigation of the one or more portions of the alternative route. In someembodiments, the alternative route does not include portions for whichautonomous navigation is enabled and virtual characterizations of one ormore portions of the alternative route may be presently non-existent. Asa result, a proposal to navigate the alternative route can include aninvitation to a user to manually navigate along the route, so that avirtual characterization of one or more roadway portions included in thealternative route can be developed and autonomous navigation of thealternative route cane be subsequently enabled.

In the illustrated embodiment, user interface device 600 includes adisplay interface 602, which can include a GUI 602. GUI 602 illustratesone or more representations of one or more roadways 610A-E and arepresentation of a particular driving route 620 between a startinglocation 612A and a destination location 612B. As further shown, GUI 602illustrates a representation of an alternative route 630 between the twolocations 612A-B and an message 670 prompting a user to selectivelyengage or decline engaging autonomous navigation of the alternativeroute 630, rather than navigate along route 620, based at least in partupon interaction with one or more interactive elements 672-674 of theGUI 602.

FIG. 7 illustrates developing virtual characterizations of one or moreroadway portions to enable autonomous navigation of the one or moreroadway portions, according to some embodiments. The developing can beimplemented by any of the embodiments of ANSs included in one or morevehicles and can be implemented by one or more computer systems.

At 702, a set of input data is received from one or more sensor devicesof a vehicle based on the vehicle being manually navigated through oneor more roadway portions is received. The set of input data can includeexternal sensor data indicating various static features of the roadwayportion, vehicle sensor data indicating various instances of dataassociated with the vehicle, driving characteristic data associated withone or more of the vehicle, one or more other external vehiclesnavigating the roadway portion in proximity to the vehicle, somecombination thereof, or the like.

At 704, based at least in part upon processing at least some of thereceived set of input data, a virtual characterization of the one ormore roadway portions is developed. The virtual characterization caninclude a characterization of a set of driving rules associated withnavigating through the roadway portion, a characterization of the staticfeatures of the roadway portion, some combination thereof, etc. In someembodiments, developing a virtual characterization of one or moreroadway portions includes developing a virtual characterization of adriving route which includes one or more sets of roadway portionsthrough which the vehicle navigates between one or more start locations,destination locations, etc.

At 706, a confidence indicator associated with the developed virtualcharacterizations of the one or more roadway portions is determined. Theconfidence indicator can indicate a confidence associated with one ormore of the accuracy, precision, etc. of the virtual characterization ofone or more roadway portions. At 708, a determination is made regardingwhether the confidence indicator associated with one or more virtualcharacterizations at least meets a confidence threshold level. Thethreshold level can be associated with a sufficiently-high confidenceindicator that autonomous navigation through the one or more roadwayportions can be safely engaged using the virtual characterization of theone or more roadway portions. If so, at 709, autonomous navigation ofthe one or more roadway portions is enabled, such that autonomousnavigation of the one or more roadway portions can be engaged. If not,at 710, a determination is made regarding whether a rate of change ofthe confidence indicator of the one or more virtual characterizations,based on successive changes in the virtual characterizations based onsuccessive sets of input data generated based on successive manualnavigations of the one or more roadway portions, is more than athreshold rate level. If so, the process 702-710 repeats iterativelywith successive manual navigations along the one or more roadwayportions resulting in generation of successive sets of input data usedto update the virtual characterizations and confidence indicators of theone or more roadway portions, until either the confidence indicatorincreases above the confidence threshold, changes at a rate which isless than the confidence rate threshold, etc.

If, as shown at 712, the rate at which the confidence indicator of oneor more virtual characterizations of one or more roadway portionschanges is determined at 710 to be less than a confidence ratethreshold, one or more of the virtual characterizations, sets of inputdata, etc. can be uploaded to a remote service, system, etc. foradditional processing to modify the virtual characterizations toincrease the confidence indicator associated with the virtualcharacterizations beyond the confidence threshold. At 714, adetermination is made regarding whether an alternative route, relativeto the driving route in which the one or more roadway portions areincluded, is available. The alternative route, in some embodiments,includes one or more portions for which autonomous navigation isenabled. At 716, if an alternative route is available, the alternativeroute can, via one or more user interfaces of the vehicle, be proposedto a user of a vehicle as an option for navigation between a startinglocation and a destination location in the alternative to the drivingroute most recently navigated between the starting location and thedestination location.

Autonomous Navigation Network

In some embodiments, multiple ANSs are installed in multiple separatevehicles, and each separate ANS can develop virtual characterizations ofthe one or more driving routes navigated by the respective vehicle inwhich the respective ANS is installed. In some embodiments, the multipleseparate ANSs can communicatively couple with a remote system, service,etc. and communicate data therewith. A remote system, service, etc. caninclude a navigation monitoring system, implemented on one or morecomputer systems which are external to the multiple vehicles andcommunicatively coupled to one or more vehicles via one or morecommunication networks. One or more monitoring systems can becommunicatively coupled via one or more communication networks, and anANS in a given vehicle can communicatively couple with one or more ofthe navigation monitoring systems.

Data communication between the multiple ANSs and one or more monitoringsystems can include various ANSs “uploading” one or more sets of virtualroute characterizations, virtual roadway portion characterizations,input data received from sensors of the vehicle in which the uploadingANS is located, etc. In some embodiments, an ANS uploads a virtualcharacterization to a remote system, service, etc. which isincorporated, at the navigation monitoring system, into a database ofcharacterizations and input data. In some embodiments, an ANS uploadsone or more virtual characterizations, sets of input data, etc. to beprocessed by the navigation monitoring system to refine one or morevirtual characterizations, so that automated driving can be enabled forthe one or more characterizations.

Data communication between the multiple ANSs and one or more monitoringsystems can include the navigation monitoring system distributing, or“downloading”, one or more virtual characterizations of one or moredriving routes, roadway portions, etc. to one or more ANSs installed inone or more vehicles. A virtual characterization distributed to an ANSfrom the navigation monitoring system can include a virtualcharacterization developed at least partially at the navigationmonitoring system based on data received from one or more ANSs, avirtual characterization which was developed at a separate ANS anduploaded to the navigation monitoring system, some combination thereof,etc.

FIG. 8 illustrates a schematic of an autonomous navigation network 800which comprises multiple ANSs 804A-F, located in separate vehicles802A-F, which are communicatively coupled to a navigation monitoringsystem 810 via one or more communication links 820 over one or morecommunication networks, according to some embodiments. Each ANS 804illustrated can include any of the ANSs illustrated in any of the aboveembodiments.

In some embodiments, a navigation monitoring system 810, implemented onone or more computer systems which are external to the various vehicles802 in network 800, includes a processing module 812, implemented by oneor more instances of processing circuitry included in the navigationmonitoring system, which can process one or more sets of input dataassociated with one or more roadway portions, one or more virtualcharacterizations of one or more roadway portions, one or more virtualcharacterizations of one or more driving routes, some combinationthereof, etc. In some embodiments, a navigation monitoring system 810includes a database 814 in which multiple various virtualcharacterizations 816 of one or more driving routes, roadway portions,etc. are stored.

In some embodiments, the navigation monitoring system 810 communicateswith the various ANSs 804A-F via the one or more communication links820. Such communication can include exchanging virtualcharacterizations, exchanging sets of input data associated with one ormore roadway portions, etc. between one or more ANSs 804 and thenavigation monitoring system 810. For example, each ANS 804A-F includesat least one database 806A-F in which one or more sets of input data,virtual characterizations, etc. can be stored. An ANS 804 can upload avirtual characterization, developed by the ANS 804 and stored at therespective database 806, to monitoring system 810 for one or more ofprocessing, storage at database 814, etc. Monitoring system 810 candistribute one or more virtual characterizations 816 stored at database814, including virtual characterizations received from one or more ANSs804, virtual characterizations at least partially developed at thenavigation monitoring system 810 via processing module 812, etc. to oneor more ANSs 804 to be stored in one or more databases 806 of therespective one or more ANSs 804. For example, a virtual routecharacterization developed at ANS 804E can be uploaded to system 810 anddistributed to ANS 804A-D, F. In some embodiments, data including someor all of a route characterization can be uploaded continuously from oneor more ANSs to system 810. For example, concurrently with vehicle 802Anavigating a route autonomously, ANS 804A can process input data fromvarious sensor devices of vehicle 802A and continuously upload inputdata, virtual characterizations based at least in part upon such inputdata, some combination thereof, etc. to system 810 as vehicle 802Acontinues to navigate one or more roadway portions.

FIG. 9A-B illustrate a schematic of an autonomous navigation network 900which comprises multiple ANSs 904A-D, located in separate vehicles902A-D, which are communicatively coupled to a navigation monitoringsystem 910 via one or more communication links 920A-D over one or morecommunication networks, according to some embodiments. Each ANS 904illustrated can include any of the ANSs illustrated in any of the aboveembodiments.

In some embodiments, multiple separate ANSs located in separate vehiclesdevelop virtual characterizations of various separate sets of roadwayportions, driving routes, etc. The separate ANSs can communicate one ormore of such locally-developed virtual characterizations to thenavigation monitoring system, where the various characterizations fromvarious ANSs can be incorporated into a collection of virtualcharacterizations at the navigation monitoring system. In someembodiments, one or more ANSs located in one or more separate vehiclesautonomously navigating one or more roadway portions concurrently andcontinuously uploads virtual characterizations developed based on sensordata generated during the autonomous navigation of the one or moreroadway portions.

FIG. 9A illustrates each of the separate ANSs 904A-D of the separatevehicles 902A-D communicating a separate set 909A-D of virtual roadwayportion characterizations to monitoring system 910 via separatecommunication links 920A-D. each separate set 909A-D of virtualcharacterizations is illustrated in FIG. 9A in separate maprepresentations 908A-D showing the geographic locations and roadways forwhich the separate sets 909A-D include virtual characterizations. Asshown, each map 908A-D is an illustrated representation of a commongeographic region, and each separate set 909A-D of virtualcharacterizations includes a set of multiple virtual roadway portioncharacterizations of a separate set of roadway portions. In someembodiments, separate sets of virtual characterizations include virtualcharacterizations of common roadway portions. For example, as shown inFIG. 9A, the sets of virtual characterizations 909A-B include virtualcharacterizations of roadway portions 911.

The various ANSs can communicate the virtual characterizations to thenavigation monitoring system based on various triggers. For example, thevarious ANSs 904 can communicate at least some of the locally-developedvirtual characterizations, locally-stored virtual characterizations,etc. to the navigation monitoring system 910 in response to development,updating, etc. of said characterizations, in response to a timestamptrigger, in response to a query from the navigation monitoring system910, intermittently, continuously, periodically, some combinationthereof, etc.

Upon receipt of a virtual characterization from an ANS, the navigationmonitoring system can implement processing of the virtualcharacterization, which can include automatically modifying variouselements of the virtual characterization such that the confidenceindicator associated with the virtual characterization is improved. Theprocessing, which can be implemented by one or more processing modules912 of the system 910, can include processing a virtual characterizationin response to determining that a confidence indicator associated withthe receive virtual characterization is less than a threshold confidenceindication, processing the virtual characterization in response toidentifying a curation flag associated with the received virtualcharacterization, etc.

In some embodiments, the navigation monitoring system 910 processesreceived virtual characterizations, input data sets, etc. associatedwith one or more roadway portions with respect to stored virtualcharacterizations of the one or reo roadway portions. Such processingcan include comparing two separate virtual characterizations of aroadway portion and discarding a virtual characterization in favor ofstoring another virtual characterization in response to a determinationthat the confidence indicator associated with the favored virtualcharacterization is superior to that of the discarded virtualcharacterization. In some embodiments, such processing can includedeveloping a “composite” virtual characterization of one or more roadwayportions based at least in part upon data incorporated from two or morevirtual characterizations of the one or more roadway portions. Forexample, a composite virtual characterization of a roadway portion canbe developed based on at least some static feature characterizationsincluded in one virtual characterization of the roadway portion, atleast some other static feature characterizations included in anothervirtual characterization of the roadway portion, and at least somedriving rule characterizations incorporated from yet another virtualcharacterization of the roadway portion. Such incorporation of variouselements from various virtual characterizations can be based at least inpart upon a determination that a confidence indicator associated a givenelement of a given virtual characterization is superior to correspondingelements of other virtual characterizations.

FIG. 9B illustrates a graphical representation of a set 919 of virtualroadway portion characterizations stored in the database 914 ofmonitoring system 910, where the various characterizations in the set919 can be developed based at least in part upon characterizations909A-D received from one or more of the ANSs 904. As shown, the set 919of virtual characterizations is shown in a map representation 918showing the geographic locations and roadways for which the set 919includes virtual characterizations. Set 919 includes a virtualcharacterization for each of the roadway portions for which a virtualcharacterization was received in one or more of the sets 909 receivedfrom one or more of the ANSs 904. Where multiple virtualcharacterizations of a roadway portion are received in the various sets909, the corresponding virtual characterization in set 919 can include acomposite characterization developed from the multiple receivedcharacterizations, a selected one of the received virtualcharacterizations, some combination thereof, etc.

In some embodiments, a navigation monitoring system distributes at leasta portion of the virtual characterizations stored at the navigationmonitoring system to one or more ANSs via one or more communicationlinks. The navigation monitoring system can distribute one or morevirtual characterizations to an ANS in response to receiving a requestfrom the ANS for such distribution, in response to an update to thevirtual characterizations stored at the navigation monitoring system, inresponse to a timestamp trigger, intermittently, continuously, atperiodic intervals, some combination thereof, or the like. As shown inFIG. 9B, monitoring system 910 can distribute one or more of the virtualcharacterizations included in the stored set 919 of virtualcharacterizations to one or more of the ANSs 904A-D via one or more ofthe communication links 920A-D. In some embodiments, a navigationmonitoring system distributes, to a given ANS, a limited selection ofvirtual characterizations of one or more roadway portions for which thegiven ANS does not presently have a stored virtual characterizationassociated with a greater confidence indicator than the confidenceindicator associated with the virtual characterizations in the limitedselection.

In some embodiments, an ANS can communicate with a navigation monitoringsystem to develop virtual characterizations of one or more roadwayportions with sufficiently high confidence indicator to enableautonomous navigation of the one or more roadway portions via thevirtual characterizations. Such communication can include uploading oneor more sets of input data associated with the roadway portions fordevelopment into one or more virtual characterizations, uploading one ormore developed virtual characterizations for additional processing, etc.

In some embodiments, an ANS can upload a virtual characterization, oneor more sets of input data, some combination thereof, or the like to anavigation monitoring system, based at least in part upon adetermination that the confidence indicator associated with one or morevirtual characterizations is changing at less than a threshold rate overa certain number of updates of the one or more virtualcharacterizations. Such uploading can include communicating a request tothe navigation monitoring system to implement additional processing ofthe virtual characterization, input data, etc. to generate a modifiedvirtual characterization. Once a virtual characterization is received atthe navigation monitoring system, a processing module of the navigationmonitoring system can implement processing of one or morecharacterizations included in the virtual characterization to generate amodified virtual characterization with an improved associated confidenceindicator. Such processing can include implementing processingcapabilities not available at the ANS. If such a modified virtualcharacterization cannot be generated based on the processing at thenavigation monitoring system, the navigation monitoring system can flagone or more portions of the virtual characterization for “manualcuration”, whereby the one or more portions of the virtualcharacterization can be modified based on user-initiated modification ofsaid portions.

A user, operator, etc. can be alerted by the navigation monitoringsystem that the virtual characterization requires manual modification toimprove the associated confidence indicator thereof. If the manualcuration does not result in a modified virtual characterization havingan associated confidence indicator which at least meets a thresholdlevel, the navigation monitoring system can generate a dispatchingcommand to dispatch a dedicated sensor suite, which can be included in adedicated sensor vehicle, to the one or more roadway portionscharacterized in the virtual characterization, where the sensor suite iscommanded to collect additional sets of input data associated with theroadway portions. Once such additional sets of input data are receivedat the navigation monitoring system from the dedicated sensor suit, thedata can be processed to implement additional modification of thevirtual characterization of the roadway portion.

If such additional processing does not result in a modified virtualcharacterization having an associated confidence indicator which atleast meets a threshold level, the roadway portion can be associatedwith a warning flag, and alternative driving routes can be associatedwith driving routes which include the flagged roadway portion.Characterizations of such alternative driving routes can be distributedto one or more ANSs, including the ANS from which the virtualcharacterization was originally received.

FIG. 10 illustrates a “curation spectrum” 1000 of processing availableto generate one or more virtual roadway portion characterizations,according to some embodiments. Such a curation spectrum 1000 can includeone or more ANSs, monitoring systems, etc., which can include any of theabove embodiments of ANSs, monitoring systems, etc.

In some embodiments, an ANS included in a vehicle implements “localcuration” 1001 of a virtual characterization of a roadway portion, wherethe ANS processes one or more sets of input data associated with theroadway portion, and a virtual characterization of the roadway portion,to update the virtual characterization. Such processing can occur inresponse to receiving the set of input data and can occur multiple timesin response to successively-generated sets of input data, based onsuccessive navigations of a vehicle along the roadway portion. Suchsuccessive processing can result in changes to a confidence indicatorassociated with the virtual characterization over time. For example,with each update to a virtual characterization, the confidence indicatorcan change based at least in part upon the changes, if any, to thevirtual characterization with each successive update thereof.

As shown in FIG. 10, a vehicle 1002 can include an ANS 1004 whichincludes a processing module 1006 which can implement said updating. Theprocessing module 1006 can compare the virtual characterization andassociated confidence indicator with one or more threshold confidenceindicators, threshold rates, etc. The ANS 1004 can selectively enableautonomous navigation of the roadway portion based at least in part upona determination that the associated confidence indicator at least meetsa confidence indication threshold, which is also referred to hereininterchangeably as a “threshold confidence indication”, “threshold”,etc.

Where the confidence indicator does not meet the threshold, the ANS 1004can determine whether the confidence indicator is changing at a minimumthreshold rate over time with successive updates to the associatedvirtual characterization. If not, the ANS 1004 can upload some or all ofthe virtual characterization to a navigation monitoring system 1010 toimplement the next level of “curation”. Such curation can include“remote automatic curation” 1003, where one or more processing modules1012 included in the navigation monitoring system 1010 process one ormore virtual characterizations of one or more roadway portions todevelop one or more modified virtual characterizations. Such processingcan be implemented automatically, without manual input from one or moreusers, utilizing processing capabilities not available locally to theANS 1004. For example, the processing module 1012 of the navigationmonitoring system 1010 can include processing systems, processingcircuity, etc. configured to implement additional processing algorithms,modification processes, etc. which can modify a received virtualcharacterization. The automatic curation 1003 is implemented to generatea modified virtual characterization of the roadway portion with anassociated confidence indicator which is superior to the confidenceindicator associated with the virtual characterization of the roadwayportion received from the ANS 1004. The automatic curation 1003 can, insome embodiments, result in a modified virtual characterization of aroadway portion associated with a confidence indicator which at leastmeets a threshold confidence indication associated with enablingautonomous navigation of the roadway portion. Where the automaticcuration 1003 results in such a modified virtual characterization, themodified virtual characterization can be stored at the navigationmonitoring system 1010, distributed to the ANS 1004, etc.

Where the automatic curation 1003 results in a modified virtualcharacterization associated with a confidence indicator which does notat least meet a threshold value, the navigation monitoring system 1010is configured to implement the next level of “curation”, which caninclude “manual curation” 1005, where the processing module 1012 of thenavigation monitoring system 1010 implements additional processing of avirtual curation based on user-initiated manual input. Suchimplementation of manual curation can include the processing module 1012responding to a determination that the confidence indicator of amodified virtual characterization of a roadway portion, developed viaautomatic curation 1003, does not at least meet a threshold. Thethreshold can be a confidence indication threshold associated withenabling autonomous navigation, a confidence indication of a virtualcharacterization originally received at the navigation monitoring system1010 from ANS 1004, some combination thereof, etc.

Responding to such a determination can include generating a warningmessage, which can be transmitted to one or more human operatorssupported by one or more computer systems, identifying the virtualcharacterization and requesting “manual curation” of one or moreportions of the identified virtual characterization. In response, thenavigation monitoring system can receive one or more operator-initiatedmanual input commands to implement particular modifications to one ormore elements of the virtual characterization. The navigation monitoringsystem can modify the virtual characterization, based on the receivedone or more operator initiated manual input commands, to generate amodified virtual characterization of the roadway portion with anassociated confidence indicator which is superior to the confidenceindicator associated with the virtual characterization of the roadwayportion received from the ANS 1004. The manual curation 1005 can, insome embodiments, result in a modified virtual characterization of aroadway portion associated with a confidence indicator which at leastmeets a threshold confidence indication associated with enablingautonomous navigation of the roadway portion. Where the manual curation1005 results in such a modified virtual characterization, the modifiedvirtual characterization can be stored at the navigation monitoringsystem 1010, distributed to the ANS 1004, etc.

Where the manual curation 1005 results in a modified virtualcharacterization associated with a confidence indicator which does notat least meet a threshold value, the navigation monitoring system 1010is configured to implement the next level of “curation”, which caninclude “additional data curation” 1007, where the processing module1012 of the navigation monitoring system 1010 implements additionalprocessing of a virtual characterization of one or more roadway portionsbased on input data associated with said roadway portions, received fromone or more dedicated sensor suites which are dispatched to generatedata associated with the roadway portions. Such implementation caninclude the processing module 1012 responding to a determination thatthe confidence indicator of a modified virtual characterization of aroadway portion, developed via manual curation 1005, does not at leastmeet a threshold. The threshold can be a confidence indication thresholdassociated with enabling autonomous navigation, a confidence indicatorof a virtual characterization originally received at the navigationmonitoring system 1010 from ANS 1004, some combination thereof, etc.

Responding to such a determination can include generating a dispatchcommand to one or more sensor suites 1022, which can be included in oneor more dedicated sensor vehicles 1020, to proceed to the roadwayportion characterized in the virtual characterization and generateadditional input data associated with the roadway portion via thevarious sensor included in the sensor suite 1022. The processing module1012 of the navigation monitoring system 1010 can communicate with saidsensor suite 1022, via a communication module 1016 of the navigationmonitoring system 1010. The navigation monitoring system 1010 canreceive additional input data sets from the sensor suite 1022 and, viaprocessing module 1012, implement additional processing of the virtualcharacterization of the roadway portion based at least in part upon theadditional input data. The navigation monitoring system can modify thevirtual characterization, based on the received one or more sets ofadditional input data, to generate a modified virtual characterizationof the roadway portion with an associated confidence indicator which issuperior to the confidence indicator associated with the virtualcharacterization of the roadway portion received from the ANS 1004. Thecuration 1007 can, in some embodiments, result in a modified virtualcharacterization of a roadway portion associated with a confidenceindicator which at least meets a threshold confidence indicationassociated with enabling autonomous navigation of the roadway portion.Where the curation 1007 results in such a modified virtualcharacterization, the modified virtual characterization can be stored atthe navigation monitoring system 1010, distributed to the ANS 1004, etc.

FIG. 11 illustrates receiving and processing virtual characterizations,of one or more roadway portions, according to some embodiments. Thereceiving and processing can be implemented on one or more computersystems, including one or more computer systems implementing one or moremonitoring systems, ANSs, etc.

At 1102, one or more virtual characterizations are received. The one ormore virtual characterizations can be received from one or more ANSs,monitoring systems, etc. Such virtual characterizations can be receivedat a navigation monitoring system, ANS, etc. A virtual characterizationcan include a virtual characterization of a roadway portion, a virtualcharacterization of a driving route, some combination thereof, etc.

At 1104, a determination is made regarding whether multiple receivedvirtual characterizations are virtual characterizations of a commonroadway portion, driving route, etc. For example, two separate virtualcharacterizations of a common roadway portion can be received from twoseparate ANSs. A determination of such commonality can be made based atleast in part upon comparing one or more static featurecharacterizations, driving rule characterizations, etc. included in thevarious virtual characterizations. For example, a determination of suchcommonality can be made based at least in part upon a determination thattwo separate virtual roadway portion characterizations include a commonset of geographic location coordinates in the static featurecharacterizations of the separate virtual characterizations.

If, at 1106, a determination is made that at least two virtualcharacterizations are present for a common roadway portion, drivingroute, etc., a composite virtual characterization is developed based atleast in part upon each of the at least two virtual characterizations.Such development can include incorporating at least some elements of thevarious virtual characterizations into a common composite virtualcharacterization. For example, at least some static featurecharacterizations of one virtual characterization, and at least somestatic feature characterizations of another separate virtualcharacterization, can be incorporated into a composite virtualcharacterization.

If, at 1108, a virtual characterization is a unique virtualcharacterization of a roadway portion, driving route, etc., a compositevirtual characterization of same, some combination thereof, or the like,the virtual characterization is provided to one or more recipients. Suchrecipients can include a local database, such that the virtualcharacterization is stored in the database. Such recipients can includeone or more remotely-located ANSs, services, systems, etc., such thatthe virtual characterization is communicated to same via one or morecommunication links. The database can be included in a navigationmonitoring system communicatively coupled to multiple ANSs, othermonitoring systems, some combination thereof, or the like. Thenavigation monitoring system can distribute one or more stored virtualcharacterizations to one or more ANSs, monitoring systems, etc.

FIG. 12 illustrates implementing at least a portion of a curationspectrum with regard to one or more virtual characterizations, of one ormore roadway portions, according to some embodiments. The implementingcan be implemented on one or more computer systems, including one ormore computer systems implementing one or more monitoring systems, ANSs,etc.

At 1202, one or more virtual characterizations are received. The one ormore virtual characterizations can be received from one or more ANSs,monitoring systems, etc. Such virtual characterizations can be receivedat a navigation monitoring system, ANS, etc. A virtual characterizationcan include a virtual characterization of a roadway portion, a virtualcharacterization of a driving route, some combination thereof, etc.

At 1204, a determination is made, for one or more received virtualcharacterizations, whether the respective virtual characterization hasan associated confidence indicator which at least meets a certainthreshold, which can be a threshold value associated with enablingautonomous navigation of the roadway portion characterized by thevirtual characterization. If so, at 1206, the virtual characterizationis stored in one or more databases.

If, as shown at 1208, a determination is made that a confidenceindicator associated with a virtual characterization is less than athreshold value, automatic curation of the virtual characterization isimplemented. Such implementation can include processing one or moreelements of the virtual characterization, including one or more staticfeature characterizations, driving rule characterizations, etc., togenerate a modified virtual characterization. In some embodiments,automatic curation is implemented without requiring any manual inputfrom any human operators. Generating a modified virtualcharacterization, in some embodiments, includes establishing aconfidence indicator associated with the modified virtualcharacterization.

At 1210, a determination is made regarding whether the confidenceindicator associated with the modified virtual characterization has animproved value. An improved value can include a confidence indicatorwhich is superior to the associated confidence indicator of theunmodified virtual characterization, a confidence indicator which atleast meets a threshold value associated with enabling autonomousnavigation, some combination thereof, or the like. If so, as shown at1222, the modified virtual characterization is stored in a database. Themodified virtual characterization can be distributed to one or moreANSs, monitoring systems, etc.

If not, as shown at 1212, manual curation of the virtualcharacterization is implemented. Such implementing can include flaggingthe virtual characterization for manual curation. Such flagging caninclude generating a warning message to one or more human operatorssupported by one or more computer systems, where the warning messageinstructs the one or more human operators to provide one or more manualinput commands to modify one or more elements of the virtualcharacterization to generate a modified virtual characterization. Themessage can include an instruction to modify one or more particularelements of the virtual characterization. For example, where theconfidence indicator being below a threshold is determined to be due toone or more particular elements of the virtual characterization,including one or more particular static feature characterizationsincluded therein, the message can include an instruction to modify atleast the one or more particular static feature characterizations.Manual curation can include implementing specific modifications tovarious characterizations included in the virtual characterization,based on manual inputs received from an operator.

At 1214, a determination is made regarding whether the confidenceindicator associated with the modified virtual characterization has animproved value. An improved value can include a confidence indicatorwhich is superior to the associated confidence indicator of theunmodified virtual characterization, a confidence indicator which atleast meets a threshold value associated with enabling autonomousnavigation, some combination thereof, or the like. If so, as shown at1222, the modified virtual characterization is stored in a database. Themodified virtual characterization can be distributed to one or moreANSs, monitoring systems, etc.

If not, as shown at 1216, the virtual characterization is flagged foradditional data curation. Such flagging can include generating a messageto one or more sensor suites, human operators of one or more sensorsuites, one or more vehicles which include said one or more sensorsuites, etc. to deploy the one or more sensor suites to the one or moreroadway portions characterized in the virtual characterization togenerate additional sets of input data associated with the one or moreroadway portions.

At 1218, one or more sets of additional input data are received, and thevirtual characterization is processed to modify one or more portions ofthe virtual characterization based on the additional input data. Suchmodification results in a generation of a modified virtualcharacterization, which can include an updated associated confidenceindicator.

At 1220, a determination is made regarding whether the confidenceindicator associated with the modified virtual characterization has animproved value. An improved value can include a confidence indicatorwhich is superior to the associated confidence indicator of theunmodified virtual characterization, a confidence indicator which atleast meets a threshold value associated with enabling autonomousnavigation, some combination thereof, or the like. If so, as shown at1222, the modified virtual characterization is stored in a database. Themodified virtual characterization can be distributed to one or moreANSs, monitoring systems, etc.

If not, as shown at 1224, a determination is made regarding whether analternative route is available with regard to a driving route in whichthe roadway portion characterized by the virtual characterization isincluded. If so, as shown at 1226, the alternative route is identifiedand associated with the virtual characterization, such that identifyinga driving route which includes the roadway portion characterized by thevirtual characterization includes identifying the alternative route.

Example Computer System

FIG. 13 illustrates an example computer system 1300 that may beconfigured to include or execute any or all of the embodiments describedabove. In different embodiments, computer system 1300 may be any ofvarious types of devices, including, but not limited to, a personalcomputer system, desktop computer, laptop, notebook, tablet, slate, pad,or netbook computer, cell phone, smartphone, PDA, portable media device,mainframe computer system, handheld computer, workstation, networkcomputer, a camera or video camera, a set top box, a mobile device, aconsumer device, video game console, handheld video game device,application server, storage device, a television, a video recordingdevice, a peripheral device such as a switch, modem, router, or ingeneral any type of computing or electronic device.

Various embodiments of an autonomous navigation system (ANS), asdescribed herein, may be executed in one or more computer systems 1300,which may interact with various other devices. Note that any component,action, or functionality described above with respect to FIGS. 1 through13 may be implemented on one or more computers configured as computersystem 1300 of FIG. 13, according to various embodiments. In theillustrated embodiment, computer system 1300 includes one or moreprocessors 1310 coupled to a system memory 1320 via an input/output(I/O) interface 1330. Computer system 1300 further includes a networkinterface 1340 coupled to I/O interface 1330, and one or moreinput/output devices, which can include one or more user interfacedevices. In some cases, it is contemplated that embodiments may beimplemented using a single instance of computer system 1300, while inother embodiments multiple such systems, or multiple nodes making upcomputer system 1300, may be configured to host different portions orinstances of embodiments. For example, in one embodiment some elementsmay be implemented via one or more nodes of computer system 1300 thatare distinct from those nodes implementing other elements.

In various embodiments, computer system 1300 may be a uniprocessorsystem including one processor 1310, or a multiprocessor systemincluding several processors 1310 (e.g., two, four, eight, or anothersuitable number). Processors 1310 may be any suitable processor capableof executing instructions. For example, in various embodimentsprocessors 1310 may be general-purpose or embedded processorsimplementing any of a variety of instruction set architectures (ISAs),such as the x86, PowerPC, SPARC, or MIPS ISAs, or any other suitableISA. In multiprocessor systems, each of processors 1310 may commonly,but not necessarily, implement the same ISA.

System memory 1320 may be configured to store program instructions 1325,data 1326, etc. accessible by processor 1310. In various embodiments,system memory 1320 may be implemented using any suitable memorytechnology, such as static random access memory (SRAM), synchronousdynamic RAM (SDRAM), nonvolatile/Flash-type memory, or any other type ofmemory. In the illustrated embodiment, program instructions included inmemory 1320 may be configured to implement some or all of an automotiveclimate control system incorporating any of the functionality describedabove. Additionally, existing automotive component control data ofmemory 1320 may include any of the information or data structuresdescribed above. In some embodiments, program instructions and/or datamay be received, sent or stored upon different types ofcomputer-accessible media or on similar media separate from systemmemory 1320 or computer system 1300. While computer system 1300 isdescribed as implementing the functionality of functional blocks ofprevious Figures, any of the functionality described herein may beimplemented via such a computer system.

In one embodiment, I/O interface 1330 may be configured to coordinateI/O traffic between processor 1310, system memory 1320, and anyperipheral devices in the device, including network interface 1340 orother peripheral interfaces, such as input/output devices 1350. In someembodiments, I/O interface 1330 may perform any necessary protocol,timing or other data transformations to convert data signals from onecomponent (e.g., system memory 1320) into a format suitable for use byanother component (e.g., processor 1310). In some embodiments, I/Ointerface 1330 may include support for devices attached through varioustypes of peripheral buses, such as a variant of the Peripheral ComponentInterconnect (PCI) bus standard or the Universal Serial Bus (USB)standard, for example. In some embodiments, the function of I/Ointerface 1330 may be split into two or more separate components, suchas a north bridge and a south bridge, for example. Also, in someembodiments some or all of the functionality of I/O interface 1330, suchas an interface to system memory 1320, may be incorporated directly intoprocessor 1310.

Network interface 1340 may be configured to allow data to be exchangedbetween computer system 1300 and other devices 1360 attached to anetwork 1350 (e.g., carrier or agent devices) or between nodes ofcomputer system 1300. Network 1350 may in various embodiments includeone or more networks including but not limited to Local Area Networks(LANs) (e.g., an Ethernet or corporate network), Wide Area Networks(WANs) (e.g., the Internet), wireless data networks, some otherelectronic data network, or some combination thereof. In variousembodiments, network interface 1340 may support communication via wiredor wireless general data networks, such as any suitable type of Ethernetnetwork, for example; via telecommunications/telephony networks such asanalog voice networks or digital fiber communications networks; viastorage area networks such as Fibre Channel SANs, or via any othersuitable type of network and/or protocol.

Input/output devices may, in some embodiments, include one or moredisplay terminals, keyboards, keypads, touchpads, scanning devices,voice or optical recognition devices, or any other devices suitable forentering or accessing data by one or more computer systems 1300.Multiple input/output devices may be present in computer system 1300 ormay be distributed on various nodes of computer system 1300. In someembodiments, similar input/output devices may be separate from computersystem 1300 and may interact with one or more nodes of computer system1300 through a wired or wireless connection, such as over networkinterface 1340.

As shown in FIG. 13, memory 1320 may include program instructions 1325,which may be processor-executable to implement any element or actiondescribed above. In one embodiment, the program instructions mayimplement the methods described above. In other embodiments, differentelements and data may be included. Note that data may include any dataor information described above.

Those skilled in the art will appreciate that computer system 1300 ismerely illustrative and is not intended to limit the scope ofembodiments. In particular, the computer system and devices may includeany combination of hardware or software that can perform the indicatedfunctions, including computers, network devices, Internet appliances,PDAs, wireless phones, pagers, etc. Computer system 1300 may also beconnected to other devices that are not illustrated, or instead mayoperate as a stand-alone system. In addition, the functionality providedby the illustrated components may in some embodiments be combined infewer components or distributed in additional components. Similarly, insome embodiments, the functionality of some of the illustratedcomponents may not be provided and/or other additional functionality maybe available.

Those skilled in the art will also appreciate that, while various itemsare illustrated as being stored in memory or on storage while beingused, these items or portions of them may be transferred between memoryand other storage devices for purposes of memory management and dataintegrity. Alternatively, in other embodiments some or all of thesoftware components may execute in memory on another device andcommunicate with the illustrated computer system via inter-computercommunication. Some or all of the system components or data structuresmay also be stored (e.g., as instructions or structured data) on acomputer-accessible medium or a portable article to be read by anappropriate drive, various examples of which are described above. Insome embodiments, instructions stored on a computer-accessible mediumseparate from computer system 1300 may be transmitted to computer system1300 via transmission media or signals such as electrical,electromagnetic, or digital signals, conveyed via a communication mediumsuch as a network and/or a wireless link. Various embodiments mayfurther include receiving, sending or storing instructions and/or dataimplemented in accordance with the foregoing description upon acomputer-accessible medium. Generally speaking, a computer-accessiblemedium may include a non-transitory, computer-readable storage medium ormemory medium such as magnetic or optical media, e.g., disk orDVD/CD-ROM, volatile or non-volatile media such as RAM (e.g. SDRAM, DDR,RDRAM, SRAM, etc.), ROM, etc. In some embodiments, a computer-accessiblemedium may include transmission media or signals such as electrical,electromagnetic, or digital signals, conveyed via a communication mediumsuch as network and/or a wireless link.

The methods described herein may be implemented in software, hardware,or a combination thereof, in different embodiments. In addition, theorder of the blocks of the methods may be changed, and various elementsmay be added, reordered, combined, omitted, modified, etc. Variousmodifications and changes may be made as would be obvious to a personskilled in the art having the benefit of this disclosure. The variousembodiments described herein are meant to be illustrative and notlimiting. Many variations, modifications, additions, and improvementsare possible. Accordingly, plural instances may be provided forcomponents described herein as a single instance. Boundaries betweenvarious components, operations and data stores are somewhat arbitrary,and particular operations are illustrated in the context of specificillustrative configurations. Other allocations of functionality areenvisioned and may fall within the scope of claims that follow. Finally,structures and functionality presented as discrete components in theexample configurations may be implemented as a combined structure orcomponent. These and other variations, modifications, additions, andimprovements may fall within the scope of embodiments as defined in theclaims that follow.

1-41. (canceled)
 42. An autonomous navigation system configured to beinstalled in a vehicle and selectively enable autonomous navigation ofthe vehicle, wherein the autonomous navigation system comprises: atleast one processor; and a memory, storing program instructions thatwhen executed by the at least one processor cause the autonomousnavigation system to: during manual navigation of a route to adestination: evaluate a characterization of an alternative route for atleast a portion of the route to determine that a confidence indicatorfor the characterization of the alternative route exceeds a thresholdconfidence indication; display a proposal to enable autonomousnavigation of the vehicle along the alternative route instead of theportion of the route to the destination; and in response to receiving arequest that accepts the proposal, enable autonomous navigation of thevehicle along the alternative route to the destination.
 43. Theautonomous navigation system of claim 42, wherein the memory storesfurther program instructions that when executed by the at least oneprocessor further cause the autonomous navigation system to: generatethe characterization of the alternative route from sensor data capturedduring one or more prior manual navigations of the vehicle along thealternative route.
 44. The autonomous navigation system of claim 43,wherein the memory stores further program instructions that whenexecuted by the at least one processor further cause the autonomousnavigation system to send the characterization of the alternative routeto a navigation monitoring system via a network interface of thenavigation monitoring system.
 45. The autonomous navigation system ofclaim 43, wherein the memory stores further program instructions thatwhen executed by the at least one processor further cause the autonomousnavigation system to: before the one or more prior manual navigations ofthe vehicle along the alternative route, display a proposal to manuallynavigate the alternative route so that autonomous navigation of thealternative route can be subsequently enabled.
 46. The autonomousnavigation system of claim 42, wherein the memory stores further programinstructions that when executed by the at least one processor furthercause the autonomous navigation system to: receive the characterizationof the alternative route from a navigation monitoring system via anetwork interface of the navigation monitoring system.
 47. Theautonomous navigation system of claim 46, wherein the characterizationof the alternative route is generated from sensor data captured byanother autonomous navigation system installed at another vehicle thatnavigated the alternative route.
 48. The autonomous navigation system ofclaim 42, wherein the memory stores further program instructions thatwhen executed by the at least one processor further cause the autonomousnavigation system to identify the alternative route as including acommon destination location with the route.
 49. A method comprising:performing, by an autonomous navigation system: during manual navigationof a route to a destination: evaluating a characterization of analternative route for at least a portion of the route to determine thata confidence indicator for the characterization of the alternative routeexceeds a threshold confidence indication; displaying a proposal toenable autonomous navigation of the vehicle along the alternative routeinstead of the portion of the route to the destination; and in responseto receiving a request that accepts the proposal, enabling autonomousnavigation of the vehicle along the alternative route to thedestination.
 50. The method of claim 49, further comprising: generatingthe characterization of the alternative route from sensor data capturedduring one or more prior manual navigations of the vehicle along thealternative route.
 51. The method of claim 50, further comprisingsending the generated characterization of the alternative route to anavigation monitoring system via a network interface of the navigationmonitoring system.
 52. The method of claim 50, further comprising:before the one or more prior manual navigations of the vehicle along thealternative route, displaying a proposal to manually navigate thealternative route so that autonomous navigation of the alternative routecan be subsequently enabled.
 53. The method of claim 49, furthercomprising receiving the characterization of the alternative route froma navigation monitoring system via a network interface of the navigationmonitoring system.
 54. The method of claim 53, wherein thecharacterization of the alternative route is generated from sensor datacaptured by another autonomous navigation system installed at anothervehicle that navigated the alternative route.
 55. The method of claim49, further comprising identifying the alternative route as including acommon destination location with the route.
 56. One or morenon-transitory, computer-readable storage media, storing programinstructions that when executed on or across one or more computingdevices cause the one or more computing devices to implement anautonomous navigation system that implements: during manual navigationof a route to a destination: evaluating a characterization of analternative route for at least a portion of the route to determine thata confidence indicator for the characterization of the alternative routeexceeds a threshold confidence indication; displaying a proposal toenable autonomous navigation of the vehicle along the alternative routeinstead of the portion of the route to the destination; and in responseto receiving a request that accepts the proposal, enabling autonomousnavigation of the vehicle along the alternative route to thedestination.
 57. The one or more non-transitory, computer-readablestorage media of claim 56, wherein the one or more non-transitory,computer-readable storage media store further instructions that whenexecuted by the one or more computing devices cause the autonomousnavigation system to further implement: generating the characterizationof the alternative route from sensor data captured during one or moreprior manual navigations of the vehicle along the alternative route. 58.The one or more non-transitory, computer-readable storage media of claim57, wherein the one or more non-transitory, computer-readable storagemedia store further instructions that when executed by the one or morecomputing devices cause the autonomous navigation system to furtherimplement: before the one or more prior manual navigations of thevehicle along the alternative route, displaying a proposal to manuallynavigate the alternative route so that autonomous navigation of thealternative route can be subsequently enabled.
 59. The one or morenon-transitory, computer-readable storage media of claim 56, wherein theone or more non-transitory, computer-readable storage media storefurther instructions that when executed by the one or more computingdevices cause the autonomous navigation system to further implementreceiving the characterization of the alternative route from anavigation monitoring system via a network interface of the navigationmonitoring system.
 60. The one or more non-transitory, computer-readablestorage media of claim 59, wherein the characterization of thealternative route is generated from sensor data captured by anotherautonomous navigation system installed at another vehicle that navigatedthe alternative route.
 61. The one or more non-transitory,computer-readable storage media of claim 56, wherein the one or morenon-transitory, computer-readable storage media store furtherinstructions that when executed by the one or more computing devicescause the autonomous navigation system to further implement identifyingthe alternative route as including a common destination location withthe route.